/* stylelint-disable max-line-length */
/* stylelint-disable value-list-comma-newline-after */
/* stylelint-disable selector-list-comma-newline-after */
/* stylelint-disable number-no-trailing-zeros */
/* stylelint-disable selector-class-pattern */

/*
  Font Subset Strategy
  --------------------
  We split each font into two subsets to optimize performance while ensuring complete coverage
  for English, French, and Spanish.  
  Subsets are only created for the most important and frequently used fonts to keep build size
  and complexity down — less critical fonts are loaded in full from lazy-styles.css.

  1. Core subset (-core)
     Unicode range:
       - U+0020–007F   : Basic Latin (A–Z, a–z, digits, basic punctuation, space)
       - U+00A0–00FF   : Latin-1 Supplement (accented letters for FR/ES, NBSP, ¡, ¿, etc.)
       - U+2000–206F   : General Punctuation (– — ‘ ’ “ ” …, thin spaces)
       - U+20A0–20CF   : Currency symbols (€ £ ¢, etc.)
     Purpose:
       - Supports all EN/FR/ES letters, punctuation, and common symbols.
       - Defined in styles.css and preloaded for fastest above-the-fold rendering.

  2. Extended subset (-extended)
     Unicode range:
       - U+0100–024F   : Latin Extended-A/B (extra diacritics for other European languages)
       - U+0300–036F   : Combining Diacritical Marks
       - U+1E00–1EFF   : Latin Extended Additional
     Purpose:
       - Provides rarer characters not required for EN/FR/ES.
       - Defined in lazy-styles.css, loaded after first paint.

  Notes:
    - Both subsets use the same font-family name so browsers merge them seamlessly.
    - Core and extended ranges are mutually exclusive to avoid duplicate downloads.
*/

@font-face {
  font-family: 'GT America Extended Medium';
  src:
    url('../fonts/GT-America-Extended-Medium-core.woff2') format('woff2'),
    url('../fonts/GT-America-Extended-Medium-core.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+20A0-20CF;
}

@font-face {
  font-family: 'GT America Compressed Regular';
  src:
    url('../fonts/GT-America-Compressed-Regular-core.woff2') format('woff2'),
    url('../fonts/GT-America-Compressed-Regular-core.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+20A0-20CF;
}

@font-face {
  font-family: 'GT America Extended Regular';
  src:
    url('../fonts/GT-America-Extended-Regular-core.woff2') format('woff2'),
    url('../fonts/GT-America-Extended-Regular-core.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+20A0-20CF;
}

@font-face {
  font-family: Inter;
  src:
    url('../fonts/Inter-Medium-500-core.woff2') format('woff2'),
    url('../fonts/Inter-Medium-500-core.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+20A0-20CF;
}

@font-face {
  font-family: Inter;
  src:
    url('../fonts/Inter-Bold-700-core.woff2') format('woff2'),
    url('../fonts/Inter-Bold-700-core.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+20A0-20CF;
}

:root {
  /* Primary colors */
  --c-primary-black: #000;
  --c-primary-white: #fff;
  --c-primary-gold: #b3976b;

  /* Secondary colors */
  --c-secondary-graphite: #1d1d1d;
  --c-secondary-steel: #a7abaf;
  --c-secondary-silver: #dfdfdf;
  --c-secondary-dark-gold: #87754e;

  /* Tertiary colors */
  --c-tertiary-cool-gray: #555;
  --c-tertiary-light-cool-gray: #e9eaec;
  --c-tertiary-warm-gray: #eeece7;
  --c-tertiary-light-warm-gray: #f7f6f3;
  --c-tertiary-dark-gray: #3f3f3f;
  --c-tertiary-light-gray: #f2f2f3;

  /* Accent colors */
  --c-accent-red: #cd1a0a;
  --c-accent-copper: #8f654d;

  /* Applied colors */
  --color-icon: var(--c-primary-black);
  --color-icon-accent: var(--c-primary-gold);
  --background-color: var(--c-primary-white);
  --text-color: var(--c-primary-black);
  --text-subtle: #767676;
  --link-color: var(--c-accent-red);
  --link-hover-color: var(--c-primary-black);
  --header-color: var(--c-primary-black);
  --header-background-color: var(--c-primary-white);
  --overlay-background-color: var(--c-primary-black);
  --overlay-opacity: 24%;
  --media-background: var(--c-secondary-silver);
  --section-background: var(--c-primary-white);
  --line-subtle: var(--c-secondary-silver);
  --navigation-line-default-color: var(--c-secondary-steel);
  --navigation-line-active-color: var(--c-accent-red);
  --card-background: var(--c-tertiary-light-warm-gray);
  --card-text: var(--c-primary-black);

  /* BUTTONS */

  /* TODO: remove color from button variable names; align with Core Design Kit */

  /* Primary */
  --button-primary-red-enabled: var(--c-accent-red);
  --button-primary-red-hover: #e11d0b;
  --button-primary-red-pressed: #b91709;
  --button-primary-red-disabled: #e1dfdd;

  /* Secondary */
  --button-secondary-gold-enabled: var(--c-primary-gold);
  --button-secondary-gold-hover: #d9b781;
  --button-secondary-gold-pressed: #a18860;
  --button-secondary-gold-disabled: #e1dfdd;
  --button-disabled-color: var(--c-tertiary-cool-gray);

  /* Tertiary */
  --button-tertiary-white-enabled: var(--c-primary-white);
  --button-tertiary-white-hover: #f1f1f1;
  --button-tertiary-white-border-hover: #a7a8a9;
  --button-tertiary-white-pressed: #e1dfdd;
  --button-tertiary-white-disabled: var(--c-primary-white);

  /* Focus */
  --border-focus: var(--c-primary-gold);

  /* Error */
  --c-error: #f66;
  --c-error-2: #cd1a0a;
  --c-error-inverted: #099;
  --c-success: #1a6c31;

  /* Buttons */
  --button-primary-color: var(--c-primary-black);
  --button-primary-bg: var(--c-primary-gold);
  --button-primary-bg-hover: #d9b781;
  --button-primary-bg-active: #a18860;

  /* Font family */

  /* Font Weights */
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* Fallback font */
  --fallback-ff-default: sans-serif;

  /* Headlines */
  --ff-headline-medium: 'GT America Extended Medium', var(--fallback-ff-default);
  --ff-headline-compressed: 'GT America Compressed Regular', var(--fallback-ff-default);
  --ff-subheadings-medium: 'Inter', var(--fallback-ff-default);

  /* Body */
  --ff-body: 'Inter', var(--fallback-ff-default);
  --ff-testimonial: 'GT America Extended Regular', var(--fallback-ff-default);
  --ff-accents: 'GT America Mono Regular', var(--fallback-ff-default);

  /* Fontawesome */
  --ff-fontawesome: 'fontawesome',  var(--fallback-ff-default);

  /* Digital Display TFB */
  --ff-digital-display: 'Digital Display TBF', var(--fallback-ff-default);

  /* Font sizes */

  /* GT America, Extended Medium, 45px, 115%, -2% / 32px, 115%, -2% */
  --headline-1-font-size: 3.2rem; /* 32px */
  --headline-1-line-height: 115%;
  --headline-1-letter-spacing: -0.02rem; /* -0.32px */

  /* GT America, Extended Medium, 32px, 115%, -2% / 28px, 115%, -2% */
  --headline-2-font-size: 2.8rem; /* 28px */
  --headline-2-line-height: 115%;
  --headline-2-letter-spacing: -0.02rem; /* -0.32px */

  /* Inter, Semi Bold, 28px, 115%, 0% / 31px, 118%, 0% */
  --headline-3-font-size: 2.8rem; /* 28px */
  --headline-3-line-height: 115%;
  --headline-3-font-weight: var(--fw-semibold);
  --headline-3-letter-spacing: 0;

  /* Inter, Semi Bold, 24px, 140%, 0.5%  */
  --headline-4-font-size: 2.4rem; /* 24px */
  --headline-4-line-height: 140%;
  --headline-4-font-weight: var(--fw-semibold);
  --headline-4-letter-spacing: 0.005rem; /* 0.08px */

  /* Inter, Semi Bold, 18px, 140%, 0%  */
  --headline-5-font-size: 1.8rem; /* 18px */
  --headline-5-line-height: 140%;
  --headline-5-font-weight: var(--fw-semibold);
  --headline-5-letter-spacing: 0;

  /* Wrapper for generic components */
  --wrapper-width: 1040px;

  /* COLORS START */
  --c-primary-gray: #f1f1f1;
  --c-secondary-light-gray: #f4f5f6;

  /* COLORS END */

  /*
  OLD CSS VARIABLES
  */

  --ff-inter-extrabold: 'Inter', var(--fallback-ff-default);
  --ff-inter-regular-italic: 'Inter', var(--fallback-ff-default);
  --ff-inter-medium-italic: 'Inter', var(--fallback-ff-default);
  --ff-inter-bold-italic: 'Inter', var(--fallback-ff-default);

  /* Accent elements */
  --ff-accents-medium: 'GT America Mono Medium', var(--fallback-ff-default);
  --ff-accents-regular: 'GT America Mono Regular', var(--fallback-ff-default);

  /* Body font sizes */
  --body-font-size-xxl: 2.4rem;
  --body-font-size-xl: 2.2rem;
  --body-font-size-l: 2rem;
  --body-font-size-m: 1.8rem;
  --body-font-size-s: 1.6rem;
  --body-font-size-xs: 1.4rem;
  --body-font-size-xxs: 1.3rem;

  /* Heading font sizes */
  --heading-font-size-scale: 0.5;
  --heading-font-size-xxl: calc(10rem * var(--heading-font-size-scale));
  --heading-font-size-xl: calc(8rem * var(--heading-font-size-scale));
  --heading-font-size-l: calc(6.4rem * var(--heading-font-size-scale));
  --heading-font-size-ml: calc(6rem * var(--heading-font-size-scale));
  --heading-font-size-m: calc(4rem * var(--heading-font-size-scale));
  --heading-font-size-s: calc(3.6rem * var(--heading-font-size-scale));
  --heading-font-size-xs: calc(3.2rem * var(--heading-font-size-scale));
  --heading-font-size-xxs: calc(2rem * var(--heading-font-size-scale));

  /* Heading font sizes DESKTOP */
  --heading-desktop-font-size-scale: 0.5;
  --heading-1-desktop-size-xl: calc(9rem * var(--heading-font-size-scale));

  /* Heading font sizes MOBILE */
  --heading-mobile-font-size-scale: 0.5;
  --heading-3-mobile-size-m: calc(5.2rem * var(--heading-font-size-scale));
  --heading-4-mobile-size-s: calc(4.8rem * var(--heading-font-size-scale));

  /* nav sizes */
  --nav-width: 1376px;
  --nav-height-m: 60px;
  --nav-height-l: 80px;
  --nav-height: var(--nav-height-m);
  --breadcrumb-height: 56px;

  /* Motions */
  --duration-small: 160ms;
  --duration-medium: 240ms;
  --duration-large: 320ms;
  --easing-entrance: cubic-bezier(0, 0, 0.4, 1);
  --easing-exit: cubic-bezier(0.2, 0, 1, 1);
  --easing-standard: cubic-bezier(0.2, 0, 0.1, 1);

  /* Black Label props */
  --black-label-bg: var(--c-primary-black);
  --black-label-color: var(--c-primary-white);
  --black-label-font-family: var(--ff-body);
  --black-label-font-weight: var(--label-font-weight-small);
  --black-label-font-size: var(--label-font-size-small);
  --black-label-line-height: var(--label-line-height-small);
  --black-label-letter-spacing: var(--label-letter-spacing-small);
  --black-label-margin-left: 12px;
  --black-label-max-height: 32px;
  --black-label-padding: 8px;
}

@keyframes fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fade-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@media (min-width: 1200px) {
  :root {
    --nav-height: var(--nav-height-l);
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  position: relative;
  font-size: 10px;
}

body {
  font-size: var(--body-font-size-m);
  margin: 0;
  font-family: var(--ff-body);
  line-height: 1.6;
  color: var(--text-color);
  background-color: var(--background-color);
  display: none;
}

body.appear {
  display: unset;
}

header {
  width: 100%;
  background-color: var(--header-background-color);
  color: var(--header-color);
  z-index: 3;
  min-height: var(--nav-height);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--ff-headline-medium);
  font-weight: 600;
  line-height: 1.25;
  margin-top: 1em;
  margin-bottom: 0.5em;
  scroll-margin: calc(var(--nav-height) + 1em);
}

h1,
h2 {
  font-family: var(--ff-headline-medium);
}

h1 {
  font-size: var(--heading-font-size-xxl);
}

h2 {
  font-size: var(--heading-font-size-xl);
}

h3 {
  font-size: var(--heading-font-size-l);
}

h4 {
  font-size: var(--heading-font-size-m);
}

h5 {
  font-size: var(--heading-font-size-s);
}

h6 {
  font-size: var(--heading-font-size-xs);
}

p,
dl,
ol,
ul,
pre,
blockquote {
  margin-top: 1em;
  margin-bottom: 1em;
}

a:any-link {
  color: var(--link-color);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
  color: var(--link-hover-color);
}

code,
pre,
samp {
  font-family: var(--ff-accents-medium);
  font-size: var(--body-font-size-s);
}

code,
samp {
  padding: 0.125em;
}

pre {
  overflow: scroll;
}

ul li:has(> ul > li) {
  list-style: none;
}

/* buttons */

:where(html:not(.redesign-v2)) a.button:any-link,
:where(html:not(.redesign-v2)) button {
  font-family: var(--ff-body);
  display: inline-block;
  box-sizing: border-box;
  text-decoration: none;
  border: 2px solid transparent;
  padding: 5px 30px;
  text-align: center;
  font-style: normal;
  font-weight: var(--button-font-weight);
  cursor: pointer;
  color: var(--background-color);
  background-color: var(--link-color);
  margin: 16px 0;
  overflow: hidden;
  transition: all 500ms;
}

:where(html:not(.redesign-v2)) a.button:hover,
:where(html:not(.redesign-v2)) a.button:focus,
:where(html:not(.redesign-v2)) button:hover,
:where(html:not(.redesign-v2)) button:focus {
  background-color: var(--link-hover-color);
  cursor: pointer;
}

:where(html:not(.redesign-v2)) button:focus-visible{
  outline: 2px solid var(--border-focus);
}

:where(html:not(.redesign-v2)) button:disabled,
:where(html:not(.redesign-v2)) button:disabled:hover {
  background-color: var(--c-secondary-silver);
  cursor: unset;
}

html:not(.redesign-v2) a.button--secondary,
html:not(.redesign-v2) button.button--secondary {
  background-color: unset;
  border: 2px solid currentcolor;
  color: var(--text-color);
}

html:not(.redesign-v2) a.button--secondary:hover,
html:not(.redesign-v2) button.button--secondary:hover,
html:not(.redesign-v2) a.button--secondary:focus,
html:not(.redesign-v2) button.button--secondary:focus {
  background-color: var(--button-secondary-gold-pressed);
  color: #fff;
  border-color: var(--button-secondary-gold-hover);
}

.button .icon svg {
  height: 28px;
  width: 28px;
  display: flex;
}

ul.button-container {
  padding: 0;
  list-style: none;
}

a.button.arrowed,
button.arrowed {
  border: none;
  padding: 0;
  background-color: transparent;
  color: inherit;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
}

a.button.arrowed:hover,
button.arrowed:hover,
a.button.arrowed:focus,
button.arrowed:focus {
  color: #5d5d5d;
}

:where(html:not(.redesign-v2)) main input {
  font-size: 1.25rem;
  width: 100%;
  max-width: 50rem;
  display: block;
  margin-bottom: 1rem;
  padding: 0.75rem 0.6rem;
  border-radius: 0.25rem;
  box-sizing: border-box;
  border: 1px solid var(--text-color);
  color: var(--text-color);
  background-color: var(--background-color);
}

:where(html:not(.redesign-v2)) main input:hover {
  border: 1px solid var(--text-color);
}

main .section {
  padding: 64px 16px;
}

main .section:empty {
  display: none;
}

main .section.background {
  position: relative;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center;
}

main .section.background-top {
  background-position: top;
}

main .section.text-black {
  color: var(--c-primary-black);
}

main .section.text-white {
  color: var(--c-primary-white);
}

main .section.text-white,
main .section.section--black-background {
  background-color: var(--c-primary-black);
}

main .section.dark-background {
  background-color: var(--c-secondary-graphite);
  color: var(--c-primary-white);
}

main .section.center {
  text-align: center;
}

main .section.flex-center > div {
  display: flex;
  justify-content: center;
}

main .section.gap > div {
  gap: 3rem;
}

/* top line over section or block */
main .section.title-line > div > :is(h2, h3, h4) {
  border-block-start: 3px solid var(--c-primary-black);
  padding-block-start: 1rem;
}

main .section.no-first-line.title-line > div:first-child > :is(h2, h3, h4) {
  border-block-start: none;
  padding-block-start: 0;
}

main .block.line-separator {
  border-block-start: 3px solid var(--c-primary-black);
  padding-block-start: 5rem;
}

/* less padding in sections */
main .section.padding-0 {
  padding: 0 16px;
}

main .section.padding-16 {
  padding: 16px;
}

main .section.padding-32 {
  padding: 32px 16px;
}

main .section a:focus-visible {
  outline: 2px solid var(--border-focus);
}

main .section.center a:focus-visible {
  outline: 2px solid var(--border-focus);
}

@media (min-width: 600px) {
  main .section.padding-0 {
    padding: 0 32px;
  }

  main .section.padding-16 {
    padding: 16px 32px;
  }

  main .section.padding-32 {
    padding: 32px;
  }
}

/* title white on black background */
.section.title-white > div > h2 {
  color: white;
}

/* margin adjustment */
.section.title-margin-bottom-0 > div > h2 {
  margin-block-end: 0;
}

/* stylelint-disable-next-line no-descending-specificity */
.section.wrapper-margin-top-0 > div {
  margin-block-start: 0;
}

main pre {
  background-color: var(--c-secondary-silver);
  padding: 1em;
  border-radius: 0.25em;
  overflow-x: auto;
  white-space: pre;
}

main blockquote {
  font-style: italic;
  margin: 3rem;
  text-indent: -1rem;
  hanging-punctuation: first;
}

main blockquote p::before {
  content: '“';
  line-height: 0;
}

main blockquote p::after {
  content: '”';
  line-height: 0;
}

hr {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
  border: 0;
  border-bottom: 1px solid var(--c-secondary-silver);
}

main img {
  max-width: 100%;
  width: auto;
  height: auto;
}

@media (min-width: 600px) {
  main .section {
    padding: 64px 32px;
  }
}

@media (min-width: 900px) {
  :where(html:not(.redesign-v2)) .section > div {
    max-width: 1200px;
    margin: auto;
  }

  main .section.background {
    background-size: cover;
    min-height: 100vh;
  }
}

/* progressive section appearance */
main .section[data-section-status='loading'],
main .section[data-section-status='initialized'] {
  display: none;
}

main .section.highlight {
  background-color: var(--highlight-background-color);
}

body.disable-scroll,
body.disable-scroll main {
  overflow: hidden;
}

.low-resolution-banner {
  margin-bottom: 20px;
}

.low-resolution-banner-cookie-settings {
  background: transparent;
  padding: 0;
  margin: 0;
  text-decoration: underline;
  font-size: 16px;
  font-weight: 400;
  border: none;
  color: var(--c-primary-white, #fff);
  cursor: pointer;
}

.low-resolution-banner-cookie-settings:hover,
.low-resolution-banner-cookie-settings:active {
  background-color: transparent;
}

.link-with-video {
  position: relative;
  display: inline-flex;
}

.link-with-video::after {
  content: '';
  top: 0;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgb(255 255 255 / 0%) 0, #000 100%);
  opacity: 0;
  transition: all 0.5s ease-in-out;
}

.link-with-video:hover::after {
  opacity: 0.5;
}

.video-icon-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 20px;
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  color: white;
  background: #474747;
  z-index: 1;
  transition: all 0.5s ease-in-out;
}

@media (min-width: 480px) {
  .video-icon-wrapper {
    width: 90px;
    height: 90px;
    font-size: 30px;
  }
}

@media (min-width: 744px) {
  .video-icon-wrapper {
    width: 120px;
    height: 120px;
    font-size: 50px;
  }
}

.link-with-video:hover .video-icon-wrapper {
  transform: translate(-50%, -50%) scale(0.95);
  background: #7a7a7a;
}

/* background classes */
.bg-white-paper {
  background: url('../../media/bg-explore.webp');
  background-size: cover;
}

/* Magazine listing default content metadata style */
main .section.magazine-listing-content {
  padding: 0 16px;
}

main .section.magazine-listing-content p {
  font-family: var(--ff-subheadings-medium);
  font-size: var(--body-font-size-xs);
}

main .section.magazine-listing-content p:first-of-type {
  margin: 0 0 15px;
}

main .section.magazine-listing-content h3 {
  font-family: var(--ff-body);
  font-size: var(--heading-font-size-s);
  background-color: var(--c-primary-black);
  color: var(--c-primary-white);
  width: 100%;
  line-height: 38px;
  padding: 5px 0 0 5px;
  margin: 0 0 13px;
  font-weight: 700;
}

sup {
  font-size: clamp(8px, 0.337em, 24px);
  padding-left: 1px;
  position: relative;
  top: -0.75em;
  vertical-align: top;
}

@media (min-width: 744px) {
  main .section.magazine-listing-content {
    max-width: calc(960px + 16px + 16px);
    padding-top: 50px;
    margin: 0 auto;
  }

  main .section.magazine-listing-content h3 {
    font-size: var(--heading-font-size-ml);
    margin: 0 0 17px;
  }

  main .section.magazine-listing-content p {
    font-size: var(--body-font-size-s);
  }

  main .section.magazine-listing-content p:first-of-type {
    margin: 0 0 22px;
  }
}

/* Theme icon button for contact-us page */
.icon-button .default-content-wrapper ul {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.icon-button ul .icon svg {
  width: 150px;
  height: 40px;
}

@media (min-width: 480px) {
  .icon-button .default-content-wrapper ul {
    flex-direction: row;
    justify-content: center;
  }
}

/* Section medatada styling */

main .section.font-xxl {
  font-size: var(--body-font-size-xxl);
}

main .section.font-xl {
  font-size: var(--body-font-size-xl);
}

main .section.font-l {
  font-size: var(--body-font-size-l);
}

main .section.font-m {
  font-size: var(--body-font-size-m);
}

main .section.font-s {
  font-size: var(--body-font-size-s);
}

main .section.font-xs {
  font-size: var(--body-font-size-xs);
}

main .section.font-xxs {
  font-size: var(--body-font-size-xxs);
}

main .section.bg-paper {
  background: url('../media/bg-paper.webp');
}

main .section.section-width {
  max-width: 960px;
  margin: 0 auto;
}

/* quick fix to align #community title with the cards below */
.section.bg-white-paper.cards-container > .default-content-wrapper > h2 {
  text-align: center;
}

@media (min-width: 669px) {
  .section.bg-white-paper.cards-container > .default-content-wrapper > h2 {
    margin-inline: auto;
    max-width: 590px;
    text-align: start;
  }
}

@media (min-width: 989px) {
  .section.bg-white-paper.cards-container > .default-content-wrapper > h2 {
    margin-inline: auto;
    max-width: 910px;
  }
}

main .section.font-55 {
  font-family: var(--ff-body);
}

main .section.font-65 {
  font-family: var(--ff-subheadings-medium);
}

main .section.font-75 {
  font-family: var(--ff-body);
  font-weight: 700;
}

main .section.font-56 {
  font-family: var(--ff-inter-regular-italic);
  font-style: italic;
  font-weight: 400;
}

main .section.font-66 {
  font-family: var(--ff-inter-medium-italic);
  font-style: italic;
  font-weight: 500;
}

main .section.font-76 {
  font-family: var(--ff-inter-bold-italic);
  font-style: italic;
  font-weight: 700;
}

main .section.responsive-title h1 {
  font-family: var(--ff-inter-extrabold);
  font-size: var(--heading-2-mobile-size-l);
  font-weight: 800;
}

@media (min-width: 744px) {
  main .section.responsive-title h1 {
    font-size: var(--heading-font-size-xxl);
  }
}

/* REDESIGN GLOBAL STYLES */
.redesign-v2 {
  --v2-space-small: 16px;
  --section-max-width: 1920px;
  --section-padding-top: 40px;
  --section-padding-bottom: 40px;
  --section-gap: 40px;
  --section-div-padding: 0 var(--v2-space-small);

  font-size: 16px;
  scroll-behavior: smooth;

  /* Font sizes */

  /* GT America, Extended Medium, 45px, 115%, -2% / 32px, 115%, -2% */
  --headline-1-font-size: 2rem; /* 32px */

  /* GT America, Extended Medium, 32px, 115%, -2% / 28px, 115%, -2% */
  --headline-2-font-size: 1.75rem; /* 28px */

  /* Inter, Semi Bold, 31px, 115%, 0% / 28px, 118%, 0% */
  --headline-3-font-size: 1.75rem; /* 28px */

  /* Inter, Semi Bold, 24px, 140%  */
  --headline-4-font-size: 1.5rem; /* 24px */

  /* Inter, Semi Bold, 18px, 140%, 0%  */
  --headline-5-font-size: 1.125rem; /* 18px */

  /* Body font sizes */
  --body-font-size-xxl: 1.5rem; /* 24px */
  --body-font-size-xl: 1.375rem; /* 22px */
  --body-font-size-l: 1.25rem; /* 20px */
  --body-font-size-m: 1.125rem; /* 18px */
  --body-font-size-s: 1rem; /* 16px */
  --body-font-size-xs: 0.875rem; /* 14px */

  /* stylelint-disable-next-line number-max-precision */
  --body-font-size-xxs: 0.8125rem; /* 13px */

  /* Inter, Medium, 16px, 150%, -1.5% / Inter, Bold, 16px, 150%, 0.5%  */
  --body-1-font-size: 1rem; /* 16px */
  --body-1-line-height: 150%;
  --body-1-font-weight: var(--fw-medium);
  --body-1-letter-spacing: -0.015rem; /* -0.24px */
  --body-1-font-weight-bold: var(--fw-bold);
  --body-1-letter-spacing-bold: 0.005rem; /* 0.08px */

  /* Inter, Medium, 13px, 160%, -3% / Inter, Bold, 13px, 160%, -0.5%  */
  /* stylelint-disable-next-line number-max-precision */
  --body-2-font-size: 0.8125rem; /* 13px */
  --body-2-line-height: 160%;
  --body-2-letter-spacing: -0.03rem; /* -0.48px */
  --body-2-font-weight: var(--fw-medium);
  --body-2-letter-spacing-bold: -0.005rem; /* -0.08px */
  --body-2-font-weight-bold: var(--fw-bold);

  /* GT America Mono, Regular, 18px, 120% */
  --accent-1-font-size: 1.125rem; /* 18px */
  --accent-1-line-height: 120%;

  /* GT America Mono, Regular, 14px, 120% */
  --accent-2-font-size: 0.875rem; /* 14px */
  --accent-2-line-height: 120%;

  /* Inter, Bold, 12px, 130% 17% */
  --label-font-size-small: 0.75rem; /* 12px */
  --label-line-height-small: 130%;
  --label-letter-spacing: 0.17rem; /* 2.72px */
  --label-font-weight-small: var(--fw-bold);
  --label-letter-spacing-small: 0.13rem; /* 2.08px */

  /* Inter, Bold, 9px, 130% 17% */
  --label-font-size-x-small: 0.6rem; /* 9.6px */
  --label-line-height-x-small: 130%;
  --label-letter-spacing-x-small: 0.09rem; /* 1.44px */
  --label-font-weight-x-small: var(--fw-bold);

  /* Inter, Medium, 14px, 130%, 8% */
  --button-font-size: 0.875rem; /* 14px */
  --button-line-height: 130%;
  --button-letter-spacing: 0.08rem; /* 1.28px */
  --button-letter-spacing-small: 0.07rem; /* 1.12px */
  --button-font-weight: var(--fw-medium);

  /* GT America, Extended Roman, 24px, 120%, -2% / 18px, 120%, -2% */
  --testimonial-font-size: 1.125rem; /* 18px */
  --testimonial-line-height: 120%;
  --testimonial-letter-spacing: -0.0225rem; /* -0.48px */

  /* GT America Compressed, 48px, 90% */
  --heading-compressed-font-size: 3rem; /* 18px */
  --heading-compressed-line-height: 90%;

  /* In page navigation */
  --inpage-navigation-height: 0;

  /* Forms text styling */
  --form-letter-spacing: 0.07rem; /* 1.12px */
  --form-line-height: 130%; /* 18px */

  /* Buttons */
  --button-primary-color: var(--c-primary-black);
  --button-primary-bg: var(--c-primary-gold);
  --button-primary-bg-hover: #d9b781;
  --button-primary-bg-active: #a18860;
  --button-secondary-color: var(--c-primary-black);
  --button-secondary-border: var(--c-primary-black);
  --button-secondary-bg: var(--c-primary-white);
  --button-secondary-bg-hover: #f1f1f1;
  --button-secondary-border-hover: #a7a8a9;
  --button-secondary-bg-active: #e1dfdd;
  --button-secondary-border-active: #d9d9d9;
  --button-red-color: var(--c-primary-white);
  --button-red-bg: var(--c-accent-red);
  --button-red-bg-hover: #e11d0b;
  --button-red-bg-active: #b91709;

  /* Standalone link */
  --standalone-link-color: var(--c-primary-black);
  --standalone-link-color-active: #555;
  --standalone-link-color-hover: #555;

  /* Border color */
  --light-border: 1px solid #e1e1e1;

  /* Placeholder text color */
  --c-placeholder-text: #757575;
}

.redesign-v2 body {
  font-size: var(--body-1-font-size);
  font-weight: var(--body-1-font-weight);
  line-height: var(--body-1-line-height);
  letter-spacing: var(--body-1-letter-spacing);
}

/* stylelint-disable no-descending-specificity */
:where(.redesign-v2) h1,
:where(.redesign-v2) h2,
:where(.redesign-v2) h3,
:where(.redesign-v2) h4,
:where(.redesign-v2) h5,
:where(.redesign-v2) h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--ff-subheadings-medium);
  font-weight: normal;
}
/* stylelint-enable no-descending-specificity */

/* stylelint-disable-next-line no-descending-specificity */
:where(.redesign-v2) h1,
.h1 {
  font-family: var(--ff-headline-medium);
  font-size: var(--headline-1-font-size);
  line-height: var(--headline-1-line-height);
  letter-spacing: var(--headline-1-letter-spacing);
}

/* stylelint-disable-next-line no-descending-specificity */
:where(.redesign-v2) h2,
.h2 {
  font-family: var(--ff-headline-medium);
  font-size: var(--headline-2-font-size);
  line-height: var(--headline-2-line-height);
  letter-spacing: var(--headline-2-letter-spacing);
}

/* stylelint-disable-next-line no-descending-specificity */
:where(.redesign-v2) h3,
.h3 {
  font-size: var(--headline-3-font-size);
  font-weight: var(--headline-3-font-weight);
  line-height: var(--headline-3-line-height);
  letter-spacing: var(--headline-3-letter-spacing);
}

:where(.redesign-v2) h4,
.h4 {
  font-size: var(--headline-4-font-size);
  font-weight: var(--headline-4-font-weight);
  line-height: var(--headline-4-line-height);
  letter-spacing: var(--headline-4-letter-spacing);
}

:where(.redesign-v2) h5,
.h5 {
  font-size: var(--headline-5-font-size);
  font-weight: var(--headline-5-font-weight);
  line-height: var(--headline-5-line-height);
  letter-spacing: var(--headline-5-letter-spacing);
}

/* ICONS STYLES */

/* icons on gold background */
.redesign-v2 [data-theme='gold'] {
  --background-color: var(--c-primary-gold);
  --text-color: var(--c-primary-black);
  --line-subtle: var(--c-accent-copper);
  --color-icon-accent: var(--c-primary-white);
}

.redesign-v2 [data-theme='copper'] {
  --background-color: var(--c-accent-copper);
  --text-color: var(--c-primary-white);
  --line-subtle: var(--c-primary-gold);
  --color-icon: var(--c-primary-white);
  --color-icon-accent: var(--c-primary-black);
}

.redesign-v2 [data-theme='silver'] {
  --background-color: var(--c-secondary-silver);
  --text-color: var(--c-primary-black);
  --color-icon: var(--c-primary-black);
}

/* icons on black background */
.redesign-v2 [data-theme='black'] {
  --background-color: var(--c-primary-black);
  --text-color: var(--c-primary-white);
  --color-icon: var(--c-primary-white);
}

/* ICONS STYLES - END */

/* REDESIGN Buttons */
/* stylelint-disable no-descending-specificity */
.redesign-v2 a.button:any-link,
.redesign-v2 button {
  font-weight: var(--button-font-weight);
}
/* stylelint-enable no-descending-specificity */

/* stylelint-disable-next-line no-descending-specificity */
.redesign-v2 a.button,
.redesign-v2 button.button {
  align-items: center;
  border-radius: 2px;
  border: 1px solid transparent;
  cursor: pointer;
  display: inline-flex;
  font-family: var(--ff-subheadings-medium);
  font-size: var(--button-font-size);
  font-weight: var(--button-font-weight);
  gap: 10px;
  justify-content: center;
  letter-spacing: var(--button-letter-spacing);
  line-height: var(--button-line-height);
  min-width: 128px;
  padding: 12px 20px 8px;
  text-align: center;
  text-decoration: none;
  transition:
    background-color var(--duration-small) var(--easing-standard),
    color var(--duration-small) var(--easing-standard),
    border-color var(--duration-small) var(--easing-standard);
}

.redesign-v2 a.button:focus,
.redesign-v2 button.button:focus {
  outline: 0;
}

.redesign-v2 a.button:focus-visible,
.redesign-v2 button.button:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: 2px;
}

.redesign-v2 a.button--small,
.redesign-v2 button.button--small {
  min-width: 96px;
  padding: 8px 20px 4px;
}

.redesign-v2 a.button--large,
.redesign-v2 button.button--large {
  min-width: 160px;
  padding: 16px 20px 12px;
}

.redesign-v2 .button--red {
  background-color: var(--button-red-bg);
  color: var(--button-red-color);
}

.redesign-v2 .button--red:hover,
.redesign-v2 .button--red:focus {
  background-color: var(--button-red-bg-hover);
}

.redesign-v2 .button--red:active {
  background-color: var(--button-red-bg-active);
}

.redesign-v2 a.button--primary,
.redesign-v2 button.button--primary {
  background-color: var(--button-primary-bg);
  color: var(--button-primary-color);
}

.redesign-v2 .button--primary:hover,
.redesign-v2 .button--primary:focus {
  background-color: var(--button-primary-bg-hover);
}

.redesign-v2 .button--primary:active {
  background-color: var(--button-primary-bg-active);
}

/* stylelint-disable no-descending-specificity */
.redesign-v2 a.button--secondary,
.redesign-v2 button.button--secondary {
  background-color: var(--button-secondary-bg);
  border-color: var(--button-secondary-border);
  color: var(--button-secondary-color);
}
/* stylelint-enable no-descending-specificity */

/* stylelint-disable-next-line no-descending-specificity */
.redesign-v2 .button--secondary:hover,
.redesign-v2 .button--secondary:focus {
  background-color: var(--button-secondary-bg-hover);
  border-color: var(--button-secondary-border-hover);
}

.redesign-v2 .button--secondary:active {
  background-color: var(--button-secondary-bg-active);
  border-color: var(--button-secondary-border-active);
}

.video-wrapper {
  position: relative;
}

/* Play/pause buttons */
.v2-video__playback-button,
.video-js button.vjs-big-play-button {
  --playback-button-size: 64px;

  border: 0;
  color: var(--c-primary-black);
  cursor: pointer;
  height: var(--playback-button-size);
  line-height: var(--playback-button-size);
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: var(--playback-button-size);
  z-index: 1;
  background-color: var(--c-primary-gold);
  border-radius: 0;
  margin: 0;
  left: auto;
  transition: none;
}

.video-js button.vjs-big-play-button .vjs-icon-placeholder::before {
  font-size: 48px;
}

.video-js.vjs-controls-enabled:hover {
  cursor: pointer;
}

.v2-video__playback-button:hover,
.video-js button.vjs-big-play-button:hover,
.video-js:hover button.vjs-big-play-button {
  background-color: var(--button-primary-bg-hover);
}

.video-js button.vjs-big-play-button:focus-visible {
  outline: 2px solid var(--border-focus);
}

.v2-video__playback-button:active,
.video-js button.vjs-big-play-button:active {
  background-color: var(--c-secondary-dark-gold, #87754e);
}

.v2-video__playback-button:focus {
  outline: 0;
}

.v2-video__playback-button:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: 2px;
}

.v2-video__playback-button .icon-play-video,
.v2-video__playback-button .icon-pause-video {
  display: none;
  justify-content: center;
}

.v2-video__playback-button .icon {
  align-items: center;
  height: 100%;
}

/* stylelint-disable-next-line no-descending-specificity */
.v2-video__playback-button .icon svg {
  height: var(--playback-button-size);
  width: var(--playback-button-size);
}

/* Video mute toggle button */
.video__mute-toggle-button {
  --video-mute-toggle-button-size: 64px;
  --video-mute-toggle-button-top: 64px;

  background-color: var(--c-primary-gold);
  border: 0;
  cursor: pointer;
  height: var(--video-mute-toggle-button-size);
  padding: 0;
  position: absolute;
  right: 0;
  top: var(--video-mute-toggle-button-top);
  width: var(--video-mute-toggle-button-size);
  z-index: 1;
}

.video__mute-toggle-button:focus {
  outline: 0;
}

.video__mute-toggle-button:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: 2px;
}

.video__mute-toggle-button:hover {
  background-color: var(--button-primary-bg-hover);
}

.video__mute-toggle-button:active {
  background-color: var(--c-secondary-dark-gold, #87754e);
}

.video__mute-toggle-button .icon {
  /* color: var(--button-primary-bg); */
  height: 100%;
  width: 100%;
}

/* Section Background colors */
.redesign-v2 .section--primary-gray-background,
.redesign-v2 .section--black-background,
.redesign-v2 .section--graphite-background,
.redesign-v2 .section--gray-background,
.redesign-v2 .section--light-gray-background,
.redesign-v2 .section--with-background {
  --card-background: var(--c-primary-white);
  --card-text: var(--c-primary-black);

  color: var(--text-color);
  background-color: var(--section-background);
  z-index: 1;
}

.redesign-v2 .section--black-background,
.redesign-v2 .section--graphite-background {
  --navigation-line-default-color: #393939;
  --text-color: var(--c-primary-white);
  --color-icon: var(--c-primary-white);
  --text-subtle: #8d8d8d;
}

.redesign-v2 .section--primary-gray-background {
  --section-background: var(--c-primary-gray);
}

.redesign-v2 .section--black-background {
  --section-background: var(--c-primary-black);
}

.redesign-v2 .section--graphite-background {
  --section-background: var(--c-secondary-graphite);
}

.redesign-v2 .section--gray-background,
.redesign-v2 .section--light-gray-background {
  --navigation-line-default-color: var(--c-primary-white);
  --text-color: var(--c-primary-black);
  --text-subtle: #636363;
}

.redesign-v2 .section--gray-background {
  --section-background: var(--c-secondary-silver);
}

.redesign-v2 .section--light-gray-background {
  --section-background: var(--c-tertiary-light-cool-gray);
}

.redesign-v2 .section--background-with-dots {
  position: relative;
  z-index: 1;
}

.redesign-v2 .section--background-with-dots::after {
  background-image: url('../../media/dots.svg');
  background-position: top right 10px;
  bottom: 0;
  content: '';
  display: block;
  height: round(60%, 24px); /* stylelint-disable-line declaration-property-value-no-unknown */
  width: 40%;
  width: round(40%, 24px); /* stylelint-disable-line declaration-property-value-no-unknown */
  position: absolute;
  right: 0;
  z-index: 1;
}

/* stylelint-disable-next-line no-descending-specificity */
.redesign-v2 .section--background-with-dots > div {
  position: relative;
  z-index: 2;
}

.redesign-v2 .section--with-background {
  --text-color: var(--c-primary-white);

  aspect-ratio: 2 / 1;
  color: var(--text-color);
  display: flex;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  max-width: var(--section-max-width);
  position: relative;
}

.redesign-v2 .section--with-background .default-content-wrapper {
  background-color: var(--c-secondary-graphite);
}

.redesign-v2 .section--with-background > picture:first-of-type img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

/* End section Background colors */

/* stylelint-disable-next-line no-descending-specificity */
.redesign-v2 .section {
  padding: var(--section-padding-top) 0 var(--section-padding-bottom);
  scroll-margin-top: calc(var(--nav-height) + var(--inpage-navigation-height));
  display: flex;
  flex-flow: column;
  gap: var(--section-gap);
}

.redesign-v2 .section--no-gap,
.redesign-v2 .v2-icon-cards-container,
.v2-breadcrumb-container.v2-hero-container,
.redesign-v2 .v2-icon-cards-container:not(.section--with-background) {
  gap: 0;
}

.redesign-v2 .section--no-vertical-padding {
  --section-padding-top: 0;
  --section-padding-bottom: 0;
}

/* stylelint-disable-next-line no-descending-specificity */
.redesign-v2 .section > div {
  padding: var(--section-div-padding);
  max-width: var(--wrapper-width);
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

/* Remove padding top of consecutive sections with background image or colors */
.redesign-v2:not:has(main.error) .section:first-child,
.redesign-v2 .v2-testimonial-container,
.redesign-v2 .v2-feature-carousel-container,
.redesign-v2 .v2-intro-section-container,
.redesign-v2 .section + .section--with-background,
.redesign-v2 .section--light-gray-background:has(.v2-pencil-promo__pencil-banner),
.redesign-v2 .section--gray-background:has(.v2-pencil-promo__pencil-banner),
.redesign-v2 .section--graphite-background:has(.v2-pencil-promo__pencil-banner),
.redesign-v2 .section--black-background:has(.v2-pencil-promo__pencil-banner) {
  --section-padding-top: 0;
}

/* stylelint-disable-next-line no-descending-specificity */
.redesign-v2 .section--with-background,
.redesign-v2 .v2-feature-carousel-container,
.redesign-v2 .v2-intro-section-container,
.redesign-v2 .v2-testimonial-container {
  --section-padding-bottom: 0;
}

/* Prevent padding in blocks that contain multiple sections */
/* stylelint-disable-next-line no-descending-specificity */
.section:has(+ .v2-truck-lineup-container, + .v2-tabbed-carousel-wrapper) {
  padding-bottom: 0;
}

/* Prevent margins for first and last element of a text */
.redesign-v2 .section > div.default-content-wrapper > *:first-child {
  margin-top: 0;
}

.redesign-v2 .section > div.default-content-wrapper > *:last-child {
  margin-bottom: 0;
}

/* END Prevent margins for first and last element of a text */

.redesign-v2 .section > .full-width {
  padding: 0;
  margin: 0;
  width: 100%;
  max-width: 100%;
}

.section.header-with-mark > .default-content-wrapper > h1:first-child,
.section.header-with-mark > .default-content-wrapper > h2:first-child,
.redesign-v2 .with-marker {
  padding-top: 18px;
}

.section.header-with-mark > .default-content-wrapper p a:focus-visible {
  outline: 2px solid var(--border-focus);
} 

.section.header-with-mark > .default-content-wrapper > h1:first-child::before,
.section.header-with-mark > .default-content-wrapper > h2:first-child::before,
.redesign-v2 .with-marker::before {
  content: '';
  margin: 0;
  height: 0;
  width: 45px;
  border-bottom: 4px solid var(--c-accent-red);
  display: block;
  position: relative;
  top: -18px;
}

.redesign-v2 a.standalone-link {
  align-items: center;
  color: var(--standalone-link-color);
  display: inline-flex;
  font-family: var(--ff-subheadings-medium);
  font-size: var(--button-font-size);
  font-weight: var(--button-font-weight);
  gap: 4px;
  letter-spacing: var(--button-letter-spacing);
  line-height: var(--button-line-height);
  background: transparent;
}

.redesign-v2 a.standalone-link:active {
  color: var(--standalone-link-color-active);
}

.redesign-v2 a.standalone-link:hover,
.redesign-v2 a.standalone-link:focus {
  color: var(--standalone-link-color-hover);
  text-decoration: underline;
}

.redesign-v2 a.standalone-link:focus-visible {
  outline: 2px solid var(--border-focus);
}

.redesign-v2 .li--hyphen {
  padding-left: 20px;
  margin-bottom: 8px;
  position: relative;
  line-height: 150%;
}

.redesign-v2 .li--hyphen:last-of-type {
  margin-bottom: 0;
}

.redesign-v2 .li--hyphen::before {
  content: '-';
  position: absolute;
  left: 5px;
}

@media (min-width: 1040px) {
  .section.header-with-mark > .default-content-wrapper:first-of-type > h1:first-child::before,
  .section.header-with-mark > .default-content-wrapper:first-of-type > h2:first-child::before,
  .redesign-v2 .with-marker::before {
    width: 65px;
  }
}

@media (min-width: 1072px) {
  .redesign-v2 .section {
    padding: var(--section-padding-top) 0 var(--section-padding-bottom);
  }

  .redesign-v2 .section > div {
    margin: 0 auto;
    max-width: var(--wrapper-width);
    padding: 0;
  }
}

@media (min-width: 744px) {
  .section--background-with-dots::after {
    height: 75%;
    height: round(75%, 24px); /* stylelint-disable-line declaration-property-value-no-unknown */
    width: 55%;
    width: round(55%, 24px); /* stylelint-disable-line declaration-property-value-no-unknown */
    background-position: top right;
  }

  .section--with-background {
    --text-color: var(--c-primary-black);
  }

  .redesign-v2 .section--with-background.v2-columns-container {
    --section-padding-bottom: 0;
  }

  .redesign-v2 .section--with-background .default-content-wrapper {
    background-color: transparent;
  }
}

@media (min-width: 1200px) {
  .redesign-v2 {
    --headline-1-font-size: 2.8125rem; /* 45px */
    --headline-2-font-size: 2rem; /* 32px */
    --headline-3-font-size: 1.9375rem; /* 31px */
    --headline-3-line-height: 118%;
    --testimonial-font-size: 1.5rem; /* 24px */
    --testimonial-letter-spacing: -0.03rem;
    --section-div-padding: 24px 0;
    --section-padding-top: 80px;
    --section-padding-bottom: 80px;
  }

  .redesign-v2 .v2-testimonial-container {
    --section-padding-bottom: 80px;
  }

  .section--with-background {
    --section-padding-top: 56px;
    --section-padding-bottom: 56px;
    --text-color: var(--c-primary-white);

    justify-content: flex-end;
  }

  .section--with-background > picture:first-of-type img {
    display: block;
    height: 100%;
    left: 50%;
    object-fit: cover;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: 100%;
    z-index: -1;
  }
}

.redesign-v2 .pretitle {
  font: normal var(--accent-2-font-size) / 1.2 var(--ff-accents);
}

/* CLS OPTIMIZATION */
.v2-hero {
  height: calc(100vh - var(--nav-height));
}

.v2-sub-navigation-container + .v2-hero-container .v2-hero {
  height: calc(100vh - var(--nav-height) - var(--v2-sub-navigation-height));
}

.v2-breadcrumb-container.v2-hero-container .v2-hero:not(.v2-hero--no-image) {
  height: calc(100vh - (var(--nav-height) + var(--breadcrumb-height)));
}

@supports (height: 1svh) {
  .v2-hero {
    height: calc(100svh - var(--nav-height));
  }

  .v2-sub-navigation-container + .v2-hero-container .v2-hero {
    height: calc(100svh - var(--nav-height) - var(--v2-sub-navigation-height));
  }

  .v2-breadcrumb-container.v2-hero-container .v2-hero:not(.v2-hero--no-image) {
    height: calc(100svh - (var(--nav-height) + var(--breadcrumb-height)));
  }
}

@media (min-width: 990px) {
  .v2-hero {
    --hero-max-height: 900px;

    max-height: var(--hero-max-height);
  }

  @supports (height: 1svh) {
    .v2-hero {
      max-height: var(--hero-max-height);
    }
  }
}

.v2-inpage-navigation {
  opacity: 0;
}

.v2-inpage-navigation[data-block-status='loaded'] {
  opacity: 1;
}

.screenreader {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

.redesign-v2 .section.recalls-padding {
  --text-block-max-width: 506px;

  padding-top: 60px;
}

.redesign-v2 .recalls-padding .default-content-wrapper {
  max-width: var(--text-block-max-width, calc(100vw - 16px));
  text-align: center;
}

@media (min-width: 744px) {
  .redesign-v2 .section.recalls-padding {
    --text-block-max-width: 506px;
  }
}

@media (min-width: 1200px) {
  .redesign-v2 .section.recalls-padding {
    --text-block-max-width: 694px;
  }
}

/* generic tooltip styles  starts here */
.redesign-v2 .tooltip {
  position: relative;
}

.redesign-v2 .tooltip::before,
.redesign-v2 .tooltip::after {
  position: absolute;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity var(--duration-small) linear,
    visibility var(--duration-small) linear;
}

.redesign-v2 .tooltip.show::before,
.redesign-v2 .tooltip.show::after {
  opacity: 1;
  visibility: visible;
}

.redesign-v2 .tooltip::before {
  content: attr(data-tooltip);
  z-index: 2;
  padding: 4px 8px 5px;
  white-space: nowrap;
  color: var(--c-primary-black);
  background: var(--c-primary-white);
  border-radius: 4px;
  box-shadow:
    0 2px 4px 0 rgb(0 0 0 / 20%),
    0 0.3px 0.5px 0 rgb(0 0 0 / 10%);
}

.redesign-v2 .tooltip::after {
  content: '';
  width: 0;
  height: 0;
  z-index: 4;
  filter: drop-shadow(0 6px 4px rgb(0 0 0 / 10%));
}

/* tooltip position top */
.redesign-v2 .tooltip--top::before,
.redesign-v2 .tooltip--top::after {
  bottom: 100%;
  left: 50%;
  transform: translate(-50%);
  margin-bottom: 15px;
}

.redesign-v2 .tooltip--top::after {
  margin-bottom: 8.5px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 7px solid var(--c-primary-white);
}

/* generic tooltip styles  ends here */

/* Black label styling starts here */
.redesign-v2 .black-label-container {
  position: relative;
}

.redesign-v2 .black-label-container .black-label {
  position: absolute;
  background-color: var(--black-label-bg);
  color: var(--black-label-color);
  font-family: var(--black-label-font-family);
  font-weight: var(--black-label-font-weight);
  font-size: var(--black-label-font-size);
  line-height: var(--black-label-line-height);
  letter-spacing: var(--label-letter-spacing-small);
  max-height: 32px;
  padding: 8px;
  margin-left: var(--black-label-margin-left);
}

/* Black label styling specific for the header sidebars mobile view */
.redesign-v2 .header .black-label {
  left: 100%;
  font-size: var(--label-font-size-x-small);
  letter-spacing: var(--label-letter-spacing-x-small);
  max-height: 24px;
  padding: 6px;
  margin-left: 6px;
}

/* Revert mnobile to default: */
@media (min-width: 1200px) {
  .redesign-v2 .header .black-label {
    font-size: var(--black-label-font-size);
    letter-spacing: var(--label-letter-spacing-small);
    margin-left: var(--black-label-margin-left);
    max-height: var(--black-label-max-height);
    padding: var(--black-label-padding);
  }
}

/* Black label styling ends here */

.modal-background.modal-hidden {
  opacity: 0;
  height: 0;
  overflow: hidden;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
