/*! build version: 2.17.11 */
.sitegen-widget {
  /* font sizes */
  --title-font-size: 2.063em;
  --subtitle-font-size: 1.5em;
  --main-font-size: 1rem;
  --cta-font-size: 1rem;
  --secondary-font-size: 1rem;
  /* font families */
  --main-font: 'Montserrat', 'Arial', 'sans-serif';
  --main-font-cyrillic: 'Montserrat', 'Arial', 'sans-serif';
  --main-font-asian: 'Montserrat', 'Roboto', 'Arial', 'sans-serif';
  --primary-color: #E09E37;
--primary-color-hover: #e09f38;
--primary-color-text: #fff;
--primary-color-hover-text: #fff;
--secondary-color: #0077ee;
--secondary-color-hover: #0077ee;
--tertiary-color: #0077ee;
--tertiary-color-hover: #0077ee;
--tertiary-color-text: #fff;
--tertiary-color-hover-text: #fff;
--content-background-color: #000;
--content-text-color: #fff;
--subcontent-background-color: #1a1a1a;
--subcontent-text-color: #fff;
--content-footer-color: #808080;
--platform-tile-background-color: #242424;
--platform-tile-disabled-background-color: #1C1C1C;
--platform-info-background-color: #333333;
--platform-info-disabled-background-color: #242424;
--platform-disabled-border-color: #3F3F3F;
--platform-tile-text-color: #F2F2F2;
--platform-disabled-message-text-color: #3DB876;
--platform-link-status-text-color: #B5B5B5;
--navigation-text-color: #fff;
--error-text-color: #FF4500;

}

.sitegen-game-logo {
  height: 1.875em;
  width: 7.125em;
  max-width: 20rem;
  background-image: var(--game-logo-image, url(./assets/game-logo.42c86bc0dc5f4e3dcb29b384cf53c6cd.png));
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
@media only screen and (max-width: 900px) {
  .sitegen-game-logo {
    max-width: initial;
  }
}

@font-face {
  font-family: 'Montserrat';
  font-weight: 400;
  font-style: normal;
  src: local('Montserrat-Regular'), local('Montserrat Regular'), url(./assets/Montserrat-Regular.2a2d37bf7680d86811db09a7b7177b47.ttf);
}
@font-face {
  font-family: 'Montserrat';
  font-weight: 600;
  font-style: normal;
  src: local('Montserrat-SemiBold'), local('Montserrat SemiBold'), local('Montserrat Semi-Bold'), url(./assets/Montserrat-SemiBold.2f7a846126c7d5ee91636209cd78214b.ttf);
}
@font-face {
  font-family: 'Montserrat';
  font-weight: 700;
  font-style: normal;
  src: local('Montserrat-Bold'), local('Montserrat Bold'), url(./assets/Montserrat-Bold.0915f0a8c3367a6d05ec1e6bc6ba4abe.ttf);
}
@font-face {
  font-family: 'Roboto';
  src: url(./assets/Roboto-Regular.a0a70ade7326bbafe494a5825274d0c6.eot);
  src: local('☺'), url(./assets/Roboto-Regular.587dd45cbec487b7e28d566606dd01d7.woff) format('woff'), url(./assets/Roboto-Regular.03523cf578d69fa923226ff457b92d90.ttf) format('truetype'), url(./assets/Roboto-Regular.97b9e074666f855c12048a01820df6b6.svg) format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Roboto';
  src: url(./assets/Roboto-Bold.056ecee6e5cb26fc62a1ca3080d8c50f.eot);
  src: local('☺'), url(./assets/Roboto-Bold.3b9b7e70ff89d1117b80610a75627b26.woff) format('woff'), url(./assets/Roboto-Bold.4f39c5796e60c9d8e7327a00e9a4442e.ttf) format('truetype'), url(./assets/Roboto-Bold.bc50e51c6ed786339be8a08a217c4a07.svg) format('svg');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'Barlow';
  src: url(./assets/Barlow-Bold.e206c23a8d62af6110275cfcddf73edc.eot);
  src: local('☺'), url(./assets/Barlow-Bold.eb482cfa07c6a29fb00127da1162db4a.woff) format('woff'), url(./assets/Barlow-Bold.2dc03d2e89ef7d9e6ffb66462a62176c.ttf) format('truetype'), url(./assets/Barlow-Bold.8d4c9f8dcfa37275b1ac6a1f60392ed8.svg) format('svg');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'Barlow-Regular';
  src: url(./assets/Barlow-Regular.df910ce6a5df5bada9bb4d10dd7903eb.eot);
  src: local('☺'), url(./assets/Barlow-Regular.1225c9b96a9c8fcb3f60b1119ddb4c6b.woff) format('woff'), url(./assets/Barlow-Regular.952f8963756042f7ccf50992cfd149d0.ttf) format('truetype'), url(./assets/Barlow-Regular.56943f6e4b6398de5d8d1149d46f6cd6.svg) format('svg');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'BarlowCondensed';
  src: url(./assets/BarlowCondensed-Bold.2328106e9fc2a4a93b764ff7b2df48c2.eot);
  src: local('☺'), url(./assets/BarlowCondensed-Bold.57fc329aa8047c692280e76ef85d1425.woff) format('woff'), url(./assets/BarlowCondensed-Bold.e66bff88a767b38d30b647f34c95776c.ttf) format('truetype'), url(./assets/BarlowCondensed-Bold.6f7c6612746b1daa16f161f5a162083b.svg) format('svg');
  font-weight: 700;
  font-style: normal;
}
.sitegen-body {
  /* Issues with subpixel rendering can lead to white "borders" around application */
  background-color: #000;
  margin: 0;
}
.sitegen-body-embedded {
  background-color: transparent;
  margin: 0;
}
.sitegen-widget {
  min-height: 100vh;
  min-width: 320px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: #505050;
  font-family: var(--main-font);
  font-size: var(--main-font-size);
  overflow: auto;
}
.sitegen-widget div {
  box-sizing: border-box;
}
.sitegen-widget p {
  margin: 0;
}
.sitegen-widget * ::-webkit-scrollbar {
  width: 0.4375rem;
}
.sitegen-widget * ::-webkit-scrollbar-track {
  background: transparent;
}
.sitegen-widget * ::-webkit-scrollbar-thumb {
  background: #36a9e0;
  border-radius: 1.25rem;
}
.sitegen-widget-embedded {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.sitegen-widget-embedded div {
  box-sizing: border-box;
}
.sitegen-widget-embedded p {
  margin: 0;
}
.sitegen-ar-AE .sitegen-widget {
  direction: rtl;
}
.sitegen-ru-RU .sitegen-widget,
.sitegen-uk-UA .sitegen-widget {
  font-family: var(--main-font-cyrillic);
}
.sitegen-zh-CN .sitegen-widget,
.sitegen-zn-TW .sitegen-widget,
.sitegen-ja-JP .sitegen-widget,
.sitegen-ko-KR .sitegen-widget,
.sitegen-th-TH .sitegen-widget {
  font-family: var(--main-font-asian);
}
.sitegen-dateText {
  font-weight: bold;
}

/** Polyfill for CSS Gap in Flex Layout
* Should be removed once all browsers support the feature
* [https://caniuse.com/flexbox-gap]
*/
.sitegen-default-error-boundary {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
.sitegen-default-error-boundary__title {
  font-size: var(--title-font-size);
  font-weight: bold;
  color: var(--content-text-color);
  margin: 2rem 0;
}
.sitegen-default-error-boundary__content {
  min-height: 8.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5;
  background-color: var(--subcontent-background-color);
  color: var(--subcontent-text-color);
  padding: 2.25rem 1.5rem 2.5rem 1.5rem;
  border-top: 4px solid var(--primary-color);
  border-bottom: 4px solid var(--primary-color);
}

.sitegen-page-support-block {
  display: flex;
  flex: 1 1 auto;
  justify-content: center;
  align-items: flex-end;
  margin-top: 2.5em;
  color: var(--subcontent-text-color);
  font-size: var(--main-font-size);
  font-weight: 400;
}
.sitegen-page-support-block a {
  color: var(--secondary-color);
  text-decoration: none;
}
.sitegen-page-support-block a:hover,
.sitegen-page-support-block a:focus {
  text-decoration: underline;
  color: var(--secondary-color-hover);
}
.sitegen-page-support-block-embedded {
  display: flex;
  flex: 1 1 auto;
  justify-content: center;
  align-items: flex-end;
  margin-top: 2.5em;
}
.sitegen-page-support-block-embedded a {
  cursor: pointer;
  color: inherit;
  text-decoration: underline;
}
.sitegen-page-support-block-embedded a:hover,
.sitegen-page-support-block-embedded a:focus,
.sitegen-page-support-block-embedded a:active {
  cursor: pointer;
  color: inherit;
  text-decoration: underline;
}

/** Polyfill for CSS Gap in Flex Layout
* Should be removed once all browsers support the feature
* [https://caniuse.com/flexbox-gap]
*/
.sitegen-free-content-error {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
.sitegen-free-content-error__title {
  font-size: var(--title-font-size);
  font-weight: bold;
  color: var(--override-title-color, var(--content-text-color));
  margin: 2rem 0;
}
.sitegen-free-content-error__content {
  min-height: 8.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5;
  background-color: var(--subcontent-background-color);
  color: var(--subcontent-text-color);
  padding: 2.25rem 1.5rem 2.5rem 1.5rem;
  border-top: 4px solid var(--primary-color);
  border-bottom: 4px solid var(--primary-color);
}

.sitegen-content-banner__title {
  font-size: var(--title-font-size);
  font-weight: bold;
  color: var(--override-title-color, var(--content-text-color));
  margin: 2rem 0;
}
@media only screen and (max-width: 375px) {
  .sitegen-content-banner__title {
    padding: 0 1rem;
  }
}
.sitegen-content-banner__description {
  font-size: var(--subtitle-font-size);
  color: var(--override-subtitle-color, var(--subcontent-text-color));
  font-weight: 300;
  margin: 2rem 0;
}

.sitegen-platform-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  border: 0.125rem solid transparent;
  transition: border 0.4s ease;
  cursor: pointer;
  outline: none;
  height: 9.25rem;
  margin: 1rem;
  font-family: 'Ubisoft Sans', 'sans-serif';
  filter: drop-shadow(0px 2px 10px rgba(0, 0, 0, 0.08));
}
@media only screen and (max-width: 375px) {
  .sitegen-platform-button {
    height: 7.5rem;
    margin: 0.75rem;
  }
}
.sitegen-platform-button * {
  font-family: 'Ubisoft Sans', 'sans-serif';
}
.sitegen-platform-button--active,
.sitegen-platform-button:hover {
  border: 0.125rem solid var(--primary-color);
  border-radius: 0.375rem;
}
.sitegen-platform-button--disabled {
  border-radius: 0.375rem;
  border: 0.125rem solid var(--platform-disabled-border-color);
  filter: none;
}
.sitegen-platform-button--disabled .sitegen-platform-button__info {
  background: var(--platform-info-disabled-background-color);
}
.sitegen-platform-button--disabled .sitegen-platform-button__tile {
  background: var(--platform-tile-disabled-background-color);
}
.sitegen-platform-button--disabled:hover {
  cursor: auto;
  border: 0.125rem solid var(--platform-disabled-border-color);
}
.sitegen-platform-button__info {
  width: 10.5rem;
  padding: 0.25rem 0.25rem 0.375rem 0.25rem;
  background: var(--platform-info-background-color);
  border-bottom-left-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem;
}
@media only screen and (max-width: 375px) {
  .sitegen-platform-button__info {
    width: 8.25rem;
  }
}
.sitegen-platform-button__tile {
  width: 10.5rem;
  height: 7.313rem;
  border-top-left-radius: 0.375rem;
  border-top-right-radius: 0.375rem;
  background-color: var(--platform-tile-background-color);
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 375px) {
  .sitegen-platform-button__tile {
    width: 8.25rem;
    height: 5.75rem;
  }
}
.sitegen-platform-button__title {
  color: var(--platform-tile-text-color);
  font-size: 0.875rem;
}
@media only screen and (max-width: 375px) {
  .sitegen-platform-button__title {
    font-size: 0.75rem;
  }
}
.sitegen-platform-button__disabled-message {
  color: var(--platform-disabled-message-text-color);
  font-size: 0.75rem;
}
.sitegen-platform-button__link-status {
  color: var(--platform-link-status-text-color);
  font-size: 0.75rem;
}
.sitegen-platform-button__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/** Polyfill for CSS Gap in Flex Layout
* Should be removed once all browsers support the feature
* [https://caniuse.com/flexbox-gap]
*/
.sitegen-freecontent-platform-selection {
  min-height: 8.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5;
  background-color: var(--subcontent-background-color);
  color: var(--subcontent-text-color);
  padding: 2.25rem 1.5rem 2.5rem 1.5rem;
  border-top: 4px solid var(--primary-color);
  border-bottom: 4px solid var(--primary-color);
  flex-direction: column;
  position: relative;
}
.sitegen-freecontent-platform-selection__title {
  font-size: var(--subtitle-font-size);
  font-weight: bold;
  color: var(--override-subtitle-color, var(--subcontent-text-color));
}
.sitegen-freecontent-platform-selection__platforms {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}
.sitegen-freecontent-platform-selection .sitegen-platform-button__button-container {
  flex-direction: column-reverse;
}

.sitegen-legal-tagline {
  display: flex;
  margin: 1.5em 1em;
}
.sitegen-legal-tagline__input {
  margin-right: 0.75em;
}
.sitegen-legal-tagline__text {
  text-align: initial;
}

/** Polyfill for CSS Gap in Flex Layout
* Should be removed once all browsers support the feature
* [https://caniuse.com/flexbox-gap]
*/
.sitegen-login-page {
  min-height: 8.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5;
  background-color: var(--subcontent-background-color);
  color: var(--subcontent-text-color);
  padding: 0;
  border-top: 4px solid var(--primary-color);
  border-bottom: 4px solid var(--primary-color);
  min-height: 21em;
}
.sitegen-login-page__ubisoft-connect-container {
  width: 100%;
  display: flex;
  align-items: center;
}
.sitegen-login-page__ubisoft-connect-container iframe {
  transition: height 0.3s ease-in-out;
  border: none;
  margin: 0 auto;
}
.sitegen-login-page-embedded {
  margin-top: 10px;
}
.sitegen-login-page-embedded__ubisoft-connect-container {
  width: 100%;
  display: flex;
  align-items: center;
}
.sitegen-login-page-embedded__ubisoft-connect-container iframe {
  border: none;
  margin: 0 auto;
}

.sitegen-button {
  display: inline-block;
  position: relative;
  min-height: 2.25rem;
  min-width: 10rem;
  line-height: 1.5;
  padding: 0 2rem;
  border-radius: 0.3rem;
  font-size: 1rem;
  font-weight: bold;
  font-family: inherit;
  outline: none;
  border: none;
  cursor: pointer;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
}
/* PRIMARY STYLES */
.sitegen-button--primary {
  color: var(--override-primary-button-text-color, var(--primary-color-text));
  border-width: 1px;
  border-style: solid;
  border-color: var(--override-primary-button-border-color, var(--primary-color));
  background-color: var(--override-primary-button-background-color, var(--primary-color));
}
.sitegen-button--primary:hover {
  color: var(--override-primary-button-text-color-hover, var(--primary-color-hover-text));
  border-color: var(--override-primary-button-border-color-hover, var(--primary-color-hover));
  background-color: var(--override-primary-button-background-color-hover, var(--primary-color-hover));
}
/* SECONDARY STYLES */
.sitegen-button--secondary {
  color: var(--override-secondary-button-text-color, var(--primary-color-text));
  border-width: 1px;
  border-style: solid;
  border-color: var(--override-secondary-button-border-color, var(--primary-color));
  background-color: var(--override-secondary-button-background-color, transparent);
}
.sitegen-button--secondary:hover {
  color: var(--override-secondary-button-text-color-hover, var(--primary-color-hover-text));
  border-color: var(--override-secondary-button-border-color-hover, var(--primary-color-hover));
  background-color: var(--override-secondary-button-background-color-hover, transparent);
}
.sitegen-button--compact {
  min-height: initial;
  padding: 0 2rem;
  font-size: 0.8rem;
  border-radius: 3px;
  min-width: initial;
}
@media only screen and (max-width: 900px) {
  .sitegen-button--compact {
    width: initial;
  }
}
.sitegen-button--processing .sitegen-spinner {
  width: 100% !important;
  height: 100% !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  background-color: transparent !important;
  box-sizing: border-box !important;
  z-index: 10 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 1.5rem !important;
  min-height: 1.5rem !important;
}
.sitegen-button--processing .sitegen-spinner:after {
  content: ' ' !important;
  display: block !important;
  height: 1.5rem !important;
  width: 1.5rem !important;
  animation: sitegen-spinner-rotate 0.9s infinite linear !important;
  border: 0.12rem solid var(--primary-color-text) !important;
  border-right-color: transparent !important;
  border-radius: 50% !important;
}
@keyframes sitegen-spinner-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.sitegen-button--processing__embedded {
  position: relative;
}
.sitegen-button--processing__embedded .sitegen-spinner {
  width: 100% !important;
  height: 100% !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  background-color: transparent !important;
  box-sizing: border-box !important;
  z-index: 10 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 1.5rem !important;
  min-height: 1.5rem !important;
}
.sitegen-button--processing__embedded .sitegen-spinner:after {
  content: ' ' !important;
  display: block !important;
  height: 1.5rem !important;
  width: 1.5rem !important;
  animation: sitegen-spinner-rotate 0.9s infinite linear !important;
  border: 0.12rem solid #fff !important;
  border-right-color: transparent !important;
  border-radius: 50% !important;
}
@keyframes sitegen-spinner-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/** Polyfill for CSS Gap in Flex Layout
* Should be removed once all browsers support the feature
* [https://caniuse.com/flexbox-gap]
*/
.sitegen-game-installer {
  max-width: 420px;
  width: 100%;
}
@media only screen and (max-width: 900px) {
  .sitegen-game-installer {
    display: none;
  }
}
.sitegen-game-installer__buttons-container {
  margin-top: 1.5em;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}
.sitegen-game-installer__buttons-container .sitegen-button:first-child {
  margin-bottom: 1.875em;
}
.sitegen-game-installer__buttons-container p {
  display: inline-block;
  margin-top: auto;
  margin-bottom: auto;
  font-size: var(--main-font-size);
  color: var(--subcontent-text-color);
}
.sitegen-game-installer .sitegen-game-installer__buttons-container.flex-direction-row {
  flex-direction: row;
}
.sitegen-game-installer .sitegen-game-installer__buttons-container.flex-direction-row .sitegen-button {
  width: 49%;
  margin: 0;
  padding: 0 1.6875rem;
  font-size: 0.875rem;
  line-height: 1.0625rem;
}

/** Polyfill for CSS Gap in Flex Layout
* Should be removed once all browsers support the feature
* [https://caniuse.com/flexbox-gap]
*/
.sitegen-success-page__content {
  min-height: 8.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5;
  background-color: var(--subcontent-background-color);
  color: var(--subcontent-text-color);
  padding: 2.25rem 1.5rem 2.5rem 1.5rem;
  border-top: 4px solid var(--primary-color);
  border-bottom: 4px solid var(--primary-color);
  flex-direction: column;
}
.sitegen-success-page__content div:last-child {
  margin-bottom: 0;
}
.sitegen-success-page__congrats-message {
  font-size: var(--subtitle-font-size);
  font-weight: bold;
  margin-top: 0;
  margin-bottom: 1.5em;
  color: var(--override-subtitle-color, var(--subcontent-text-color));
}
.sitegen-success-page__message {
  line-height: 1.5em;
  font-size: var(--main-font-size);
  color: var(--subcontent-text-color);
}
.sitegen-success-page__info-block {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  padding-left: 1.875em;
}
@media only screen and (max-width: 900px) {
  .sitegen-success-page__info-block {
    padding-left: 0;
    order: 1;
  }
}
.sitegen-success-page__image {
  height: 18.75em;
  max-width: 100%;
  width: 14.25em;
  justify-self: flex-start;
  border: 1px solid #000000;
  min-height: 12em;
  background: var(--game-packshot-image) no-repeat center center;
  background-size: cover;
  box-shadow: 0.125rem 0.313rem 0.938rem rgba(255, 255, 255, 0.08);
  flex-shrink: 0;
}
@media only screen and (max-width: 900px) {
  .sitegen-success-page__image {
    margin: 2.5em auto 0 auto;
    order: 2;
  }
}
.sitegen-success-page__fw-game-asset {
  display: flex;
  flex-direction: row;
}
@media only screen and (max-width: 900px) {
  .sitegen-success-page__fw-game-asset {
    flex-direction: column;
  }
}

/** Polyfill for CSS Gap in Flex Layout
* Should be removed once all browsers support the feature
* [https://caniuse.com/flexbox-gap]
*/
.sitegen-end-of-operation {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.sitegen-end-of-operation__title {
  font-size: var(--title-font-size);
  font-weight: bold;
  color: var(--override-title-color, var(--content-text-color));
  margin: 2rem 0;
}
.sitegen-end-of-operation__content {
  min-height: 8.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5;
  background-color: var(--subcontent-background-color);
  color: var(--subcontent-text-color);
  padding: 2.25rem 1.5rem 2.5rem 1.5rem;
  border-top: 4px solid var(--primary-color);
  border-bottom: 4px solid var(--primary-color);
}
.sitegen-end-of-operation__content-embedded {
  min-height: 8.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.25rem 1.5rem 2.5rem 1.5rem;
}

.sitegen-user {
  display: flex;
  height: 100%;
  max-width: 70%;
  justify-content: space-between;
}
.sitegen-header-spinner {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  margin-right: 5px;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .sitegen-header-spinner {
    margin-right: 3px;
  }
}
@keyframes LOADER-ANIMATION {
  0% {
    transform: translate(-50%, -50%) rotate(0deg) scale(-1, 1);
  }
  to {
    transform: translate(-50%, -50%) rotate(1turn) scale(-1, 1);
  }
}
.sitegen-header-spinner:after {
  content: '';
  background-image: url(./assets/overlay-spinner.3e6b93ef44b863a91beb9f974ce4bd30.svg);
  animation: LOADER-ANIMATION 1s infinite cubic-bezier(0.445, 0.05, 0.55, 0.95);
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  left: 50%;
  top: 50%;
  z-index: 1;
  will-change: transform;
  animation-fill-mode: both;
  background-size: 100%;
  color: #fff;
}

.sitegen-header {
  padding: 0 3em;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 3.3em;
  color: var(--tertiary-color-text);
  background: #222222;
  border-bottom: 1px solid var(--tertiary-color);
}
.sitegen-header__logo-container {
  height: 3.3em;
}
@media only screen and (max-width: 480px) {
  .sitegen-header__logo-container {
    width: 2.1em;
    overflow: hidden;
  }
}
.sitegen-header__logo {
  display: block;
  width: 9.25em;
  height: 3.3em;
  background: url(./assets/ubisoft-logo.bb226c6a3ae8d6a32114b378ea58697a.svg) no-repeat left center;
  background-size: 70%;
}
@media only screen and (max-width: 640px) {
  .sitegen-header {
    padding: 0 0 0 0.6em;
  }
}

.sitegen-content-wrapper {
  flex-grow: 1;
  display: flex;
  justify-content: center;
  align-items: stretch;
  background: var(--background-image, url(./assets/content-bg.504fb3409a4ee6c943f818de49b67acb.jpg)) no-repeat center / cover;
  padding: 1.65em;
}
@media only screen and (max-width: 375px) {
  .sitegen-content-wrapper {
    padding: 0;
  }
}
.sitegen-content {
  min-height: 31.5em;
  padding: 1.65em 9.5em;
  width: 56.25em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  border-radius: 4px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: var(--container-background-image, none);
  background-color: var(--content-background-color);
  color: var(--content-text-color);
}
@media only screen and (max-width: 900px) {
  .sitegen-content {
    width: 100%;
    padding: 1.65em;
  }
}
@media only screen and (max-width: 375px) {
  .sitegen-content {
    padding: 1.65em 0;
  }
}
.sitegen-content .sitegen-spinner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background-color: none;
  box-sizing: border-box;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 100px;
  min-height: 100px;
}
.sitegen-content .sitegen-spinner:after {
  content: ' ';
  display: block;
  height: 100px;
  width: 100px;
  animation: sitegen-spinner-rotate 0.9s infinite linear;
  border: 8px solid var(--primary-color);
  border-right-color: transparent;
  border-radius: 50%;
}
@keyframes sitegen-spinner-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.sitegen-content-embedded {
  min-height: 31.5em;
  padding: 1.65em 9.5em;
  width: 56.25em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  border-radius: 4px;
}
@media screen and (max-width: 900px) {
  .sitegen-content-embedded {
    width: 100%;
    padding: 1.65em;
  }
}
@media screen and (max-width: 375px) {
  .sitegen-content-embedded {
    width: 320px;
    padding: 1.65em 0;
  }
}
.sitegen-content-embedded .sitegen-spinner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background-color: none;
  box-sizing: border-box;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 100px;
  min-height: 100px;
}
.sitegen-content-embedded .sitegen-spinner:after {
  content: ' ';
  display: block;
  height: 100px;
  width: 100px;
  animation: sitegen-spinner-rotate 0.9s infinite linear;
  border: 8px solid #e09f38;
  border-right-color: transparent;
  border-radius: 50%;
}
@keyframes sitegen-spinner-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.sitegen-sub-content {
  flex: 1;
  width: 100%;
  min-height: 20em;
  text-align: center;
  display: flex;
  flex-direction: column;
}
.sitegen-sub-content-embedded {
  flex: 1;
  text-align: center;
  min-height: 20em;
  display: flex;
  flex-direction: column;
}

.sitegen-footer-logo {
  display: flex;
  position: relative;
  height: 3.5rem;
  max-height: 3.5rem;
  align-items: center;
  max-width: 7.813rem;
}
.sitegen-footer-logo:before {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 0;
  height: 1px;
  background-color: var(--tertiary-color);
  left: 50%;
  transform: translate(-50%, 0);
  transition: all 0.3s;
}
.sitegen-footer-logo:hover:before {
  width: 100%;
}
.sitegen-footer-logo__link {
  display: block;
  outline: none;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  text-decoration: none;
  height: 3em;
}
.sitegen-footer-logo.sitegen-ubisoft-logo .sitegen-footer-logo__link {
  background-image: url(./assets/ubisoft-logo.8d39e726bf9017d2b9fc0de49f872931.svg);
  width: 6em;
}
.sitegen-footer-logo.sitegen-ubisoft-connect-logo .sitegen-footer-logo__link {
  background-image: url(./assets/ubisoft-connect-logo.09dd9394c5473465d58daa13a7daac18.svg);
  width: 8em;
}
.sitegen-footer-logo.sitegen-ubisoft-club-logo .sitegen-footer-logo__link {
  background-image: url(./assets/ubisoft-club-logo.1754b66c3cbbfe258e16a44e379997ac.svg);
  width: 5.3em;
}
.sitegen-footer-logo.sitegen-ps4-logo .sitegen-footer-logo__link {
  background-image: url(./assets/ps4-logo.c36bf6409987c8af96a7cd351f6636c2.svg);
  width: 7em;
}
.sitegen-footer-logo.sitegen-ps5-logo .sitegen-footer-logo__link {
  background-image: url(./assets/ps5-logo.2d1c046ef0de72b25e03490b536b82c1.svg);
  width: 7em;
}
.sitegen-footer-logo.sitegen-xbox-one-logo .sitegen-footer-logo__link {
  background-image: url(./assets/xone-logo.36b5a33f3c7187fc0535bb60e02ae23f.svg);
  width: 8em;
}
.sitegen-footer-logo.sitegen-luna-logo .sitegen-footer-logo__link {
  background-image: url(./assets/luna-logo.0b5eac539bc257acddc505f8e6341c88.svg);
  width: 8em;
}
.sitegen-footer-logo.sitegen-xbox-series-x-logo .sitegen-footer-logo__link {
  background-image: url(./assets/xbox-x-logo.1422dc63274d5ec0e3897b0514d69c01.svg);
  width: 8em;
}
.sitegen-footer-logo.sitegen-ubisoft-store-logo .sitegen-footer-logo__link {
  background-image: url(./assets/ubisoft-store-logo.55d6588d72d2a3161d15c5adf668d99e.svg);
  width: 6em;
}
.sitegen-footer-logo.sitegen-switch-logo .sitegen-footer-logo__link {
  background-image: url(./assets/switch-logo.63283172e507f89241ff25b31d33374c.svg);
  width: 8em;
}
.sitegen-footer-logo.sitegen-stadia-logo .sitegen-footer-logo__link {
  background-image: url(./assets/google-stadia-logo.ba75980730194a9dce7bb325329b3eb2.svg);
  width: 8em;
}
.sitegen-footer-logo.sitegen-epic-logo .sitegen-footer-logo__link {
  background-image: url(./assets/epic_games_logo.019149acdcc34bab7613c9dc768fba61.svg);
  width: 4em;
  height: 2.5em;
  background-size: contain;
}

.sitegen-footer {
  padding: 0 1.65em;
  background-color: #222222;
  color: var(--tertiary-color-text);
  border-top: 1px solid var(--tertiary-color);
}
@media only screen and (max-width: 900px) {
  .sitegen-footer {
    padding: 0 1rem;
  }
}
.sitegen-footer__content {
  max-width: 56.25em;
  margin: 0 auto;
}
.sitegen-footer__logos-and-links {
  display: flex;
  justify-content: space-between;
  margin-top: 1.65em;
}
@media only screen and (max-width: 900px) {
  .sitegen-footer__logos-and-links {
    flex-wrap: wrap;
  }
}
.sitegen-footer__logos-wrapper {
  max-width: calc(100% / 6 * 5);
  flex: 0 0 calc(100% / 6 * 5);
  padding-right: 0.938rem;
}
@media only screen and (max-width: 900px) {
  .sitegen-footer__logos-wrapper {
    max-width: 100%;
    flex: 0 0 100%;
    border-right: none;
    padding-right: 0;
  }
}
.sitegen-footer__logos-container {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-gap: 10px;
  text-align: center;
  justify-items: center;
}
@media only screen and (max-width: 900px) {
  .sitegen-footer__logos-container {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (max-width: 480px) {
  .sitegen-footer__logos-container {
    grid-template-columns: auto auto;
  }
}
.sitegen-footer__ratings-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: calc(100% / 6);
  flex: 0 0 calc(100% / 6);
}
@media only screen and (max-width: 900px) {
  .sitegen-footer__ratings-wrapper {
    max-width: 100%;
    flex: 0 0 100%;
    margin-top: 1.875rem;
  }
}
.sitegen-footer__nav-wrapper {
  margin-top: 1.875rem;
}
.sitegen-footer__nav-row {
  display: flex;
  justify-content: center;
}
.sitegen-footer__nav-item {
  margin: 0 0.625rem;
  position: relative;
}
.sitegen-footer__nav-item:after {
  content: '';
  position: absolute;
  top: 50%;
  right: -0.625rem;
  height: 70%;
  width: 0.125rem;
  transform: translate(0, -50%);
  background-color: var(--content-footer-color);
}
.sitegen-footer__nav-item.last:after {
  width: 0;
}
.sitegen-footer__nav-link {
  font-family: 'Montserrat';
  font-weight: 600;
  font-size: 0.7em;
  color: var(--content-footer-color);
  text-transform: uppercase;
  text-decoration: none;
}
.sitegen-footer__nav-link:hover {
  color: var(--tertiary-color);
}
.sitegen-footer__language-select-column {
  display: flex;
}
@media only screen and (max-width: 900px) {
  .sitegen-footer__language-select-column {
    justify-content: center;
  }
}
.sitegen-footer__copyright-msg {
  font-size: 0.563rem;
  font-family: 'Montserrat';
  font-weight: 600;
  max-width: 37.5rem;
  margin: 0.625rem auto 2.188rem auto;
  color: var(--content-footer-color);
  text-align: center;
}

.sitegen-language-select {
  position: relative;
  margin: 1.65em 0 0;
  width: 9em;
}
.sitegen-language-select select {
  background: #222222;
  border: 1px solid var(--tertiary-color);
  border-radius: 3px;
  color: #fff;
  padding: 0.3125em 1.875em 0.3125em 0.75em;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  width: 100%;
  line-height: 1.75em;
  font-weight: 400;
  font-size: 0.8em;
  font-family: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  cursor: pointer;
}
.sitegen-language-select select:focus {
  outline: none;
}
.sitegen-language-select:after {
  position: absolute;
  content: '';
  top: 45%;
  right: 5%;
  width: 0;
  height: 0;
  border: 0.375em solid;
  border-color: var(--tertiary-color) transparent transparent transparent;
  pointer-events: none;
}

.sitegen-age-ratings-logo-box {
  display: flex;
  white-space: nowrap;
  position: relative;
  height: 100%;
  width: 100%;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding-left: 0.938rem;
  border-left: 1px solid var(--tertiary-color);
}
.sitegen-age-ratings-logo-box.space-between {
  justify-content: space-between;
}
.sitegen-age-ratings-logo-box a {
  flex: 0 0 48%;
  max-width: 48%;
}
.sitegen-age-ratings-logo-box a:only-child {
  justify-content: center;
  flex: 0 0 100%;
  max-width: 100%;
}
.sitegen-age-ratings-logo-box img {
  max-width: 100%;
  max-height: 3.125rem;
}
.sitegen-age-ratings-logo-box img:hover {
  opacity: 0.8;
}
.sitegen-age-ratings-logo-box.without-border {
  border: none;
}
@media only screen and (max-width: 900px) {
  .sitegen-age-ratings-logo-box {
    width: auto;
    padding: 0 0.625rem;
    border-left: 1px solid var(--tertiary-color);
    border-right: 1px solid var(--tertiary-color);
  }
}


/*# sourceMappingURL=free-content-root-index.css.map*/