.hidden {
  display: none !important;
}

textarea#coral-id-632 {
  text-wrap-mode: nowrap !important;
}

.custom-snippet-description {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 5px auto;
  width: 90%;
  padding: 0 1rem;
  opacity: 0.8;
  border-radius: 4px;
  background-color: rgba(21, 38, 76, 0.8);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.custom-snippet-description p {
  color: #fff;
  text-align: end;
  margin: 0.8rem 0;
}

.customsnippet.embed.aem-GridColumn.aem-GridColumn--default--12.cq-Editable-dom {
  position: relative;
  z-index: 9999;
}

pre {
  font-size: 1rem;
  color: white;
  margin-bottom: 0;
  z-index: 1;
  position: relative;
}

.padding-0 {
  padding: 0 !important;
}

.margin-0 {
  margin: 0 !important;
}

.inside {
  list-style-position: inside;
}

.align-layout-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.align-layout-vertically-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.align-layout-horizontal-center {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Black Shadows */
.text-shadow-black-small {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.text-shadow-black-medium {
  text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.7);
}

.text-shadow-black-large {
  text-shadow: 5px 5px 10px rgba(0, 0, 0, 0.7);
}

/* White Shadows */
.text-shadow-white-small {
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.5);
}

.text-shadow-white-medium {
  text-shadow: 3px 3px 6px rgba(255, 255, 255, 0.7);
}

.text-shadow-white-large {
  text-shadow: 5px 5px 10px rgba(255, 255, 255, 0.7);
}

.text-align-left {
  text-align: left !important;
}

.text-align-center {
  text-align: center !important;
}

.text-align-right {
  text-align: right !important;
}

.text-align-justify {
  text-align: justify !important;
}

.line-height-narrow {
  line-height: 80%;
}

.line-height-normal {
  line-height: 100%;
}

.line-height-broad {
  line-height: 120%;
}

.pro-layout-container__background-blue-filter .pro-layout-container__background {
  filter: invert(28%) sepia(100%) saturate(600%) hue-rotate(195deg) brightness(40%) contrast(125%) opacity(0.9);
}

/* Flexbox Utility Classes */

/* Display Flex */
.d-flex {
  display: flex;
}

.d-inline-flex {
  display: inline-flex;
}

/* Flex Direction */
.flex-row {
  flex-direction: row;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

.flex-column {
  flex-direction: column;
}

.flex-column-reverse {
  flex-direction: column-reverse;
}

/* Justify Content */
.justify-start {
  justify-content: flex-start;
}

.justify-end {
  justify-content: flex-end;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.justify-around {
  justify-content: space-around;
}

.justify-evenly {
  justify-content: space-evenly;
}

/* Align Items */
.items-start {
  align-items: flex-start;
}

.items-end {
  align-items: flex-end;
}

.items-center {
  align-items: center;
}

.items-baseline {
  align-items: baseline;
}

.items-stretch {
  align-items: stretch;
}

/* Align Content */
.content-start {
  align-content: flex-start;
}

.content-end {
  align-content: flex-end;
}

.content-center {
  align-content: center;
}

.content-between {
  align-content: space-between;
}

.content-around {
  align-content: space-around;
}

.content-stretch {
  align-content: stretch;
}

/* Flex Wrap */
.flex-wrap {
  flex-wrap: wrap;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse;
}

.flex-nowrap {
  flex-wrap: nowrap;
}

/* Align Self */
.self-auto {
  align-self: auto;
}

.self-start {
  align-self: flex-start;
}

.self-end {
  align-self: flex-end;
}

.self-center {
  align-self: center;
}

.self-stretch {
  align-self: stretch;
}

/* Custom Layout Classes */
.align-layout-vertically-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.align-layout-horizontal-center {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Font Weights */
.font__thin {
  font-weight: 100;
}

.font__extralight {
  font-weight: 200;
}

.font__light {
  font-weight: 300;
}

.font__normal {
  font-weight: 400; /* Default font weight */
}

.font__medium {
  font-weight: 500;
}

.font__semibold {
  font-weight: 600;
}

.font__bold {
  font-weight: 700;
}

.font__extrabold {
  font-weight: 800;
}

.font__black {
  font-weight: 900;
}

/* Positive rotations */
.rotate-15 {
  transform: rotate(15deg);
}

.rotate-30 {
  transform: rotate(30deg);
}

.rotate-45 {
  transform: rotate(45deg);
}

.rotate-60 {
  transform: rotate(60deg);
}

.rotate-75 {
  transform: rotate(75deg);
}

.rotate-90 {
  transform: rotate(90deg);
}

.rotate-105 {
  transform: rotate(105deg);
}

.rotate-120 {
  transform: rotate(120deg);
}

.rotate-135 {
  transform: rotate(135deg);
}

.rotate-150 {
  transform: rotate(150deg);
}

.rotate-165 {
  transform: rotate(165deg);
}

.rotate-180 {
  transform: rotate(180deg);
}

/* Negative rotations */
.rotate--15 {
  transform: rotate(-15deg);
}

.rotate--30 {
  transform: rotate(-30deg);
}

.rotate--45 {
  transform: rotate(-45deg);
}

.rotate--60 {
  transform: rotate(-60deg);
}

.rotate--75 {
  transform: rotate(-75deg);
}

.rotate--90 {
  transform: rotate(-90deg);
}

.rotate--105 {
  transform: rotate(-105deg);
}

.rotate--120 {
  transform: rotate(-120deg);
}

.rotate--135 {
  transform: rotate(-135deg);
}

.rotate--150 {
  transform: rotate(-150deg);
}

.rotate--165 {
  transform: rotate(-165deg);
}

.rotate--180 {
  transform: rotate(-180deg);
}

/* HEADING SMALL Base Sizes: */
/* •	Mobile (h1): 3.6rem   60% */
/* •	Tablet (h1): 4.8rem   80% */
/* •	Desktop (h1): 6rem  100% */

/* Recalculated Font Sizes: */

/* Mobile Font Sizes: */

/* 1.	h1: 3.6rem */
/* 2.	h2: 3.02rem (0.84 × 3.6rem) */
/* 3.	h3: 2.52rem (0.7 × 3.6rem) */
/* 4.	h4: 2.09rem (0.58 × 3.6rem) */
/* 5.	h5: 1.69rem (0.47 × 3.6rem) */
/* 6.	h6: 1.4rem (0.39 × 3.6rem) */

/* Tablet Font Sizes: */

/* 1.	h1: 4.8rem */
/* 2.	h2: 4.03rem (0.84 × 4.8rem) */
/* 3.	h3: 3.36rem (0.7 × 4.8rem) */
/* 4.	h4: 2.78rem (0.58 × 4.8rem) */
/* 5.	h5: 2.26rem (0.47 × 4.8rem) */
/* 6.	h6: 1.87rem (0.39 × 4.8rem) */

/* Desktop Font Sizes: */

/* 1.	h1: 6rem */
/* 2.	h2: 5.04rem (0.84 × 6rem) */
/* 3.	h3: 4.2rem (0.7 × 6rem) */
/* 4.	h4: 3.48rem (0.58 × 6rem) */
/* 5.	h5: 2.82rem (0.47 × 6rem) */
/* 6.	h6: 2.34rem (0.39 × 6rem) */

h1.heading,
h2.heading,
h3.heading,
h4.heading,
h5.heading,
h6.heading {
  font-family: Kapra-Optimized, Impact, Arial Narrow, Arial, sans-serif;
  color: white;
  text-rendering: optimizeLegibility;
  text-align: center;
  text-transform: uppercase;
  font-weight: 400;
  line-height: 100%;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

/* Mobile First Styles */
h1.heading__small {
  font-size: 3.6rem; /* Base size for mobile */
}

h2.heading__small {
  font-size: 3.02rem; /* 0.84 × 3.6rem */
}

h3.heading__small {
  font-size: 2.52rem; /* 0.7 × 3.6rem */
}

h4.heading__small {
  font-size: 2.09rem; /* 0.58 × 3.6rem */
}

h5.heading__small {
  font-size: 1.69rem; /* 0.47 × 3.6rem */
}

h6.heading__small {
  font-size: 1.4rem; /* 0.39 × 3.6rem */
}

/* Styles for Tablets (min-width: 768px) */
@media (min-width: 768px) {
  h1.heading__small {
    font-size: 4.8rem; /* Base size for tablets */
  }

  h2.heading__small {
    font-size: 4.03rem; /* 0.84 × 4.8rem */
  }

  h3.heading__small {
    font-size: 3.36rem; /* 0.7 × 4.8rem */
  }

  h4.heading__small {
    font-size: 2.78rem; /* 0.58 × 4.8rem */
  }

  h5.heading__small {
    font-size: 2.26rem; /* 0.47 × 4.8rem */
  }

  h6.heading__small {
    font-size: 1.87rem; /* 0.39 × 4.8rem */
  }
}

/* Styles for Desktop (min-width: 1024px) */
@media (min-width: 1024px) {
  h1.heading__small {
    font-size: 6rem; /* Base size for desktop */
  }

  h2.heading__small {
    font-size: 5.04rem; /* 0.84 × 6rem */
  }

  h3.heading__small {
    font-size: 4.2rem; /* 0.7 × 6rem */
  }

  h4.heading__small {
    font-size: 3.48rem; /* 0.58 × 6rem */
  }

  h5.heading__small {
    font-size: 2.82rem; /* 0.47 × 6rem */
  }

  h6.heading__small {
    font-size: 2.34rem; /* 0.39 × 6rem */
  }
}

/* HEADING MEDIUM Base Sizes */

/* 	•	Mobile (h1): 4rem 60% */
/* 	•	Tablet (h1): 5.5rem 80% */
/* 	•	Desktop (h1): 7rem 100% */

/* Recalculated Font Sizes */

/* Mobile Font Sizes (unchanged) */

/* 	1.	h1: 4rem */
/* 	2.	h2: 3.36rem (0.84 × 4rem) */
/* 	3.	h3: 2.8rem (0.7 × 4rem) */
/* 	4.	h4: 2.32rem (0.58 × 4rem) */
/* 	5.	h5: 1.88rem (0.47 × 4rem) */
/* 	6.	h6: 1.56rem (0.39 × 4rem) */

/* Tablet Font Sizes (new values) */

/* 	1.	h1: 5.5rem */
/* 	2.	h2: 4.62rem (0.84 × 5.5rem) */
/* 	3.	h3: 3.85rem (0.7 × 5.5rem) */
/* 	4.	h4: 3.19rem (0.58 × 5.5rem) */
/* 	5.	h5: 2.59rem (0.47 × 5.5rem) */
/* 	6.	h6: 2.15rem (0.39 × 5.5rem) */

/* Desktop Font Sizes (unchanged) */

/* 	1.	h1: 7rem */
/* 	2.	h2: 5.88rem (0.84 × 7rem) */
/* 	3.	h3: 4.9rem (0.7 × 7rem) */
/* 	4.	h4: 4.06rem (0.58 × 7rem) */
/* 	5.	h5: 3.29rem (0.47 × 7rem) */
/* 	6.	h6: 2.73rem (0.39 × 7rem) */

/* Mobile First Styles */
h1.heading__medium {
  font-size: 4rem; /* Base size for mobile */
}

h2.heading__medium {
  font-size: 3.36rem; /* 84% of h1 */
}

h3.heading__medium {
  font-size: 2.8rem; /* 70% of h1 */
}

h4.heading__medium {
  font-size: 2.32rem; /* 58% of h1 */
}

h5.heading__medium {
  font-size: 1.88rem; /* 47% of h1 */
}

h6.heading__medium {
  font-size: 1.56rem; /* 39% of h1 */
}

/* Styles for Tablets (768px) */
@media (min-width: 768px) {
  h1.heading__medium {
    font-size: 5.5rem; /* Increased for tablets */
  }

  h2.heading__medium {
    font-size: 4.62rem; /* 84% of h1 */
  }

  h3.heading__medium {
    font-size: 3.85rem; /* 70% of h1 */
  }

  h4.heading__medium {
    font-size: 3.19rem; /* 58% of h1 */
  }

  h5.heading__medium {
    font-size: 2.59rem; /* 47% of h1 */
  }

  h6.heading__medium {
    font-size: 2.15rem; /* 39% of h1 */
  }
}

/* Styles for Desktop (1024px) */
@media (min-width: 1024px) {
  h1.heading__medium {
    font-size: 7rem; /* Increased for desktop */
  }

  h2.heading__medium {
    font-size: 5.88rem; /* 84% of h1 */
  }

  h3.heading__medium {
    font-size: 4.9rem; /* 70% of h1 */
  }

  h4.heading__medium {
    font-size: 4.06rem; /* 58% of h1 */
  }

  h5.heading__medium {
    font-size: 3.29rem; /* 47% of h1 */
  }

  h6.heading__medium {
    font-size: 2.73rem; /* 39% of h1 */
  }
}

/* HEADING SEMI-LARGE Base Sizes for Heading Semi-Large */
/* •	Mobile (h1): 4.8rem 60% */
/* •	Tablet (h1): 6.4re  80% */
/* •	Desktop (h1): 8rem  100% */

/* Recalculated Font Sizes */

/* Mobile Font Sizes (based on 4.8rem for h1) */

/* 1.	h1: 4.8rem */
/* 2.	h2: 4.03rem (0.84 × 4.8rem) */
/* 3.	h3: 3.36rem (0.7 × 4.8rem) */
/* 4.	h4: 2.78rem (0.58 × 4.8rem) */
/* 5.	h5: 2.26rem (0.47 × 4.8rem) */
/* 6.	h6: 1.87rem (0.39 × 4.8rem) */

/* Tablet Font Sizes (based on 6.4rem for h1) */

/* 1.	h1: 6.4rem */
/* 2.	h2: 5.38rem (0.84 × 6.4rem) */
/* 3.	h3: 4.48rem (0.7 × 6.4rem) */
/* 4.	h4: 3.71rem (0.58 × 6.4rem) */
/* 5.	h5: 3.01rem (0.47 × 6.4rem) */
/* 6.	h6: 2.5rem (0.39 × 6.4rem) */

/* Desktop Font Sizes (based on 8rem for h1) */

/* 1.	h1: 8rem */
/* 2.	h2: 6.72rem (0.84 × 8rem) */
/* 3.	h3: 5.6rem (0.7 × 8rem) */
/* 4.	h4: 4.64rem (0.58 × 8rem) */
/* 5.	h5: 3.76rem (0.47 × 8rem) */
/* 6.	h6: 3.12rem (0.39 × 8rem) */

/* Mobile First Styles */
h1.heading__semi-large {
  font-size: 4.8rem; /* Base size for mobile */
}

h2.heading__semi-large {
  font-size: 4.03rem; /* 0.84 × 4.8rem */
}

h3.heading__semi-large {
  font-size: 3.36rem; /* 0.7 × 4.8rem */
}

h4.heading__semi-large {
  font-size: 2.78rem; /* 0.58 × 4.8rem */
}

h5.heading__semi-large {
  font-size: 2.26rem; /* 0.47 × 4.8rem */
}

h6.heading__semi-large {
  font-size: 1.87rem; /* 0.39 × 4.8rem */
}

/* Tablet Styles (768px) */
@media (min-width: 768px) {
  h1.heading__semi-large {
    font-size: 6.4rem; /* Base size for tablets */
  }

  h2.heading__semi-large {
    font-size: 5.38rem; /* 0.84 × 6.4rem */
  }

  h3.heading__semi-large {
    font-size: 4.48rem; /* 0.7 × 6.4rem */
  }

  h4.heading__semi-large {
    font-size: 3.71rem; /* 0.58 × 6.4rem */
  }

  h5.heading__semi-large {
    font-size: 3.01rem; /* 0.47 × 6.4rem */
  }

  h6.heading__semi-large {
    font-size: 2.5rem; /* 0.39 × 6.4rem */
  }
}

/* Desktop Styles (1024px) */
@media (min-width: 1024px) {
  h1.heading__semi-large {
    font-size: 8rem; /* Base size for desktops */
  }

  h2.heading__semi-large {
    font-size: 6.72rem; /* 0.84 × 8rem */
  }

  h3.heading__semi-large {
    font-size: 5.6rem; /* 0.7 × 8rem */
  }

  h4.heading__semi-large {
    font-size: 4.64rem; /* 0.58 × 8rem */
  }

  h5.heading__semi-large {
    font-size: 3.76rem; /* 0.47 × 8rem */
  }

  h6.heading__semi-large {
    font-size: 3.12rem; /* 0.39 × 8rem */
  }
}

/* HEADING LARGE  Base Sizes */

/* •	Mobile (h1): 5.4rem 60% */
/* •	Tablet (h1): 7.2rem 80% */
/* •	Desktop (h1): 9rem  100% */

/* Recalculated Font Sizes */

/* Mobile Font Sizes (unchanged) */

/* 1.	h1: 5.4rem */
/* 2.	h2: 4.54rem (0.84 × 5.4rem) */
/* 3.	h3: 3.78rem (0.7 × 5.4rem) */
/* 4.	h4: 3.13rem (0.58 × 5.4rem) */
/* 5.	h5: 2.53rem (0.47 × 5.4rem) */
/* 6.	h6: 2.11rem (0.39 × 5.4rem) */

/* Tablet Font Sizes (new values) */

/* 1.	h1: 7.2rem */
/* 2.	h2: 6.048rem (0.84 × 7.2rem) */
/* 3.	h3: 5.04rem (0.7 × 7.2rem) */
/* 4.	h4: 4.18rem (0.58 × 7.2rem) */
/* 5.	h5: 3.38rem (0.47 × 7.2rem) */
/* 6.	h6: 2.81rem (0.39 × 7.2rem) */

/* Mobile First Styles */
h1.heading__large {
  font-size: 5.4rem; /* Base size for mobile */
}

h2.heading__large {
  font-size: 4.54rem; /* 84% of h1 */
}

h3.heading__large {
  font-size: 3.78rem; /* 70% of h1 */
}

h4.heading__large {
  font-size: 3.13rem; /* 58% of h1 */
}

h5.heading__large {
  font-size: 2.53rem; /* 47% of h1 */
}

h6.heading__large {
  font-size: 2.11rem; /* 39% of h1 */
}

/* Styles for Tablets (768px) */
@media (min-width: 768px) {
  h1.heading__large {
    font-size: 7.2rem; /* Increased for tablets */
  }

  h2.heading__large {
    font-size: 6.048rem; /* 84% of h1 */
  }

  h3.heading__large {
    font-size: 5.04rem; /* 70% of h1 */
  }

  h4.heading__large {
    font-size: 4.18rem; /* 58% of h1 */
  }

  h5.heading__large {
    font-size: 3.38rem; /* 47% of h1 */
  }

  h6.heading__large {
    font-size: 2.81rem; /* 39% of h1 */
  }
}

/* Styles for Desktop (1024px) */
@media (min-width: 1024px) {
  h1.heading__large {
    font-size: 9rem; /* Increased for desktop */
  }

  h2.heading__large {
    font-size: 7.56rem; /* 84% of h1 */
  }

  h3.heading__large {
    font-size: 6.3rem; /* 70% of h1 */
  }

  h4.heading__large {
    font-size: 5.22rem; /* 58% of h1 */
  }

  h5.heading__large {
    font-size: 4.23rem; /* 47% of h1 */
  }

  h6.heading__large {
    font-size: 3.51rem; /* 39% of h1 */
  }
}

/* General styling for article titles */
/* General styling for article titles */
span.article-title,
p.article-title,
a.article-title {
  font-family: 'ProximaNova-Regular', Arial, sans-serif;
  font-weight: bolder;
  color: white;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
  font-size: 1rem;
  /* Medium is 1rem */
}
span.article-title__large,
p.article-title__large,
a.article-title__large {
  font-size: 1.75rem;
  /* Adjusted to 1.75 times the medium size */
}
span.article-title__medium,
p.article-title__medium,
a.article-title__medium {
  font-size: 1rem;
  /* Base size */
}
span.article-title__small,
p.article-title__small,
a.article-title__small {
  font-size: 0.875rem;
  /* Smaller than medium */
}
/* Responsive adjustments */
@media (max-width: 768px) {
  span.article-title__large,
  p.article-title__large,
  a.article-title__large {
    font-size: 1.5rem;
    /* Smaller large size for mobile */
  }
  span.article-title__medium,
  p.article-title__medium,
  a.article-title__medium {
    font-size: 1rem;
    /* Keep medium size the same */
  }
  span.article-title__small,
  p.article-title__small,
  a.article-title__small {
    font-size: 0.75rem;
    /* Smaller small size for mobile */
  }
}

span.paragraph,
p.paragraph,
a.paragraph {
  font-family: ProximaNova-Regular, Arial, sans-serif;
  font-size: 1rem;
  color: white;
}

span.paragraph.paragraph__large,
p.paragraph.paragraph__large,
a.paragraph.paragraph__large {
  font-size: 2rem; /* Adjusted large size */
}

span.paragraph.paragraph__semi-large,
p.paragraph.paragraph__semi-large,
a.paragraph.paragraph__semi-large {
  font-size: 1.5rem; /* New semi-large size */
}

span.paragraph.paragraph__medium,
p.paragraph.paragraph__medium,
a.paragraph.paragraph__medium {
  font-size: 1.125rem; /* Updated medium size */
}

span.paragraph.paragraph__small,
p.paragraph.paragraph__small,
a.paragraph.paragraph__small {
  font-size: 0.875rem; /* Adjusted small size */
}

/* Responsive adjustments */
@media (max-width: 768px) {
  span.paragraph.paragraph__large,
  p.paragraph.paragraph__large,
  a.paragraph.paragraph__large {
    font-size: 1.5rem; /* Adjusted for mobile */
  }

  span.paragraph.paragraph__semi-large,
  p.paragraph.paragraph__semi-large,
  a.paragraph.paragraph__semi-large {
    font-size: 1.25rem; /* Semi-large size adjusted for mobile */
  }

  span.paragraph.paragraph__medium,
  p.paragraph.paragraph__medium,
  a.paragraph.paragraph__medium {
    font-size: 1rem; /* Keep medium consistent */
  }

  span.paragraph.paragraph__small,
  p.paragraph.paragraph__small,
  a.paragraph.paragraph__small {
    font-size: 0.75rem; /* Adjusted for mobile */
  }
}
