/* Cinematic region opening - v1.1.13 */
.published-home .published-hero-slider > video.published-region-video,
body.home .published-home .published-hero-slider > video.published-region-video,
body.front-page .published-home .published-hero-slider > video.published-region-video,
body.page-template-front-page .published-home .published-hero-slider > video.published-region-video {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  border: 0;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  visibility: visible;
  pointer-events: none;
  filter: saturate(0.98) contrast(1.02) brightness(1);
  transform: scale(1.035);
  backface-visibility: hidden;
  will-change: opacity, transform, filter;
  transition:
    opacity 1100ms ease,
    filter 1300ms ease,
    transform 1600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.published-home .published-hero-slider > video.published-region-video.is-active,
body.home .published-home .published-hero-slider > video.published-region-video.is-active,
body.front-page .published-home .published-hero-slider > video.published-region-video.is-active,
body.page-template-front-page .published-home .published-hero-slider > video.published-region-video.is-active {
  opacity: 1;
  filter: saturate(1.04) contrast(1.02) brightness(1.02);
  transform: scale(1.012);
}

.published-home .published-hero-slider.is-region-active,
body.home .published-home .published-hero-slider.is-region-active,
body.front-page .published-home .published-hero-slider.is-region-active,
body.page-template-front-page .published-home .published-hero-slider.is-region-active {
  background: #15271d !important;
}

.published-home .published-hero-slider.is-region-active::before,
body.home .published-home .published-hero-slider.is-region-active::before,
body.front-page .published-home .published-hero-slider.is-region-active::before,
body.page-template-front-page .published-home .published-hero-slider.is-region-active::before {
  inset: 0 !important;
  z-index: 2 !important;
  background:
    linear-gradient(90deg, rgba(13, 14, 11, 0.66) 0%, rgba(13, 14, 11, 0.46) 29%, rgba(13, 14, 11, 0.13) 51%, transparent 70%),
    linear-gradient(180deg, rgba(10, 10, 8, 0.02), rgba(10, 10, 8, 0.16)) !important;
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
}

.published-home .published-hero-slider.is-region-active::after,
body.home .published-home .published-hero-slider.is-region-active::after,
body.front-page .published-home .published-hero-slider.is-region-active::after,
body.page-template-front-page .published-home .published-hero-slider.is-region-active::after {
  inset: auto 0 0 !important;
  z-index: 2 !important;
  height: 30% !important;
  background: linear-gradient(180deg, transparent, rgba(10, 10, 8, 0.32)) !important;
  opacity: 1 !important;
}

.published-region-hero {
  position: absolute;
  inset: 0;
  z-index: 6;
  display: flex;
  max-width: none;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: clamp(118px, 10vw, 178px) clamp(66px, 7.2vw, 138px) clamp(78px, 7vw, 118px);
  color: #fff8ea;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(-28px, 0, 0);
  transition:
    opacity 800ms ease,
    transform 1100ms cubic-bezier(0.22, 1, 0.36, 1);
}

.published-region-hero.is-active {
  opacity: 1;
  pointer-events: none;
  transform: translate3d(0, 0, 0);
}

.published-region-hero > img {
  width: clamp(68px, 5.7vw, 102px);
  aspect-ratio: 1;
  margin-bottom: clamp(18px, 2vw, 30px);
  object-fit: contain;
  filter: drop-shadow(0 16px 30px rgba(20, 12, 7, 0.34));
}

.published-region-kicker {
  display: block;
  margin-bottom: clamp(14px, 1.4vw, 22px);
  color: #f3d7a7;
  font-size: clamp(10px, 0.78vw, 13px);
  font-weight: 900;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.published-region-hero h1 {
  max-width: 850px;
  margin: 0;
  color: #fff8ea;
  font-family: var(--strong-font);
  font-size: clamp(58px, 6.4vw, 112px);
  line-height: 0.86;
  letter-spacing: -0.035em;
  text-wrap: balance;
  text-shadow: 0 20px 48px rgba(8, 21, 13, 0.34);
  text-transform: uppercase;
}

.published-region-hero > p {
  max-width: 620px;
  margin: clamp(24px, 2.3vw, 38px) 0 0;
  color: rgba(255, 248, 234, 0.9);
  font-family: var(--footer-font);
  font-size: clamp(17px, 1.35vw, 23px);
  font-weight: 600;
  line-height: 1.55;
}

.published-region-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  margin-top: clamp(26px, 2.8vw, 44px);
}

.published-region-actions > a,
.published-region-actions > button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  font-family: var(--footer-font);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.03em;
  pointer-events: auto;
}

.published-region-actions > a {
  padding: 13px 22px;
  background: #f47b50;
  box-shadow: 0 16px 34px rgba(244, 123, 80, 0.24);
  color: #fff8ea;
  text-decoration: none;
  transition:
    background 260ms ease,
    box-shadow 260ms ease,
    transform 260ms ease;
}

.published-region-actions > a:hover {
  background: #df6138;
  box-shadow: 0 20px 42px rgba(244, 123, 80, 0.34);
  transform: translateY(-3px);
}

.published-region-actions > button {
  gap: 10px;
  border: 1px solid rgba(255, 248, 234, 0.34);
  padding: 12px 18px;
  background: rgba(16, 42, 26, 0.34);
  color: #fff8ea;
  cursor: pointer;
  backdrop-filter: blur(12px);
  transition:
    background 260ms ease,
    border-color 260ms ease,
    transform 260ms ease;
}

.published-region-actions > button:hover,
.published-region-actions > button.is-sound-on {
  border-color: rgba(243, 215, 167, 0.78);
  background: rgba(0, 91, 49, 0.68);
  transform: translateY(-2px);
}

.published-region-actions > button > span {
  position: relative;
  display: block;
  width: 18px;
  height: 14px;
  border: solid currentColor;
  border-width: 0 2px 0 0;
}

.published-region-actions > button > span::before {
  position: absolute;
  top: 3px;
  left: 0;
  width: 6px;
  height: 8px;
  border-radius: 1px;
  background: currentColor;
  content: "";
}

.published-region-actions > button > span::after {
  position: absolute;
  top: 1px;
  left: 5px;
  width: 9px;
  height: 12px;
  border: 2px solid currentColor;
  border-width: 0 2px 0 0;
  border-radius: 50%;
  content: "";
}

.published-region-actions > button:not(.is-sound-on) > span {
  opacity: 0.72;
}

.published-region-actions > button:not(.is-sound-on) > span::after {
  border-radius: 0;
  transform: rotate(-38deg);
}

.published-region-hero > small {
  position: absolute;
  bottom: clamp(30px, 3vw, 54px);
  left: clamp(66px, 7.2vw, 138px);
  color: rgba(255, 248, 234, 0.62);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

@media (max-width: 782px) {
  .published-home .published-hero-slider,
  body.home .published-home .published-hero-slider,
  body.front-page .published-home .published-hero-slider,
  body.page-template-front-page .published-home .published-hero-slider {
    aspect-ratio: auto !important;
    height: 82svh !important;
    min-height: 620px !important;
    max-height: 820px !important;
  }

  .published-home .published-hero-slider > video.published-region-video,
  body.home .published-home .published-hero-slider > video.published-region-video,
  body.front-page .published-home .published-hero-slider > video.published-region-video,
  body.page-template-front-page .published-home .published-hero-slider > video.published-region-video {
    object-position: 54% center;
  }

  .published-home .published-hero-slider.is-region-active::before,
  body.home .published-home .published-hero-slider.is-region-active::before,
  body.front-page .published-home .published-hero-slider.is-region-active::before,
  body.page-template-front-page .published-home .published-hero-slider.is-region-active::before {
    background:
      linear-gradient(180deg, rgba(12, 12, 10, 0.05) 0%, rgba(12, 12, 10, 0.14) 34%, rgba(12, 12, 10, 0.54) 70%, rgba(12, 12, 10, 0.8) 100%) !important;
  }

  .published-region-hero {
    justify-content: flex-end;
    padding: 112px 24px 86px;
  }

  .published-region-hero > img {
    width: 72px;
    margin-bottom: 16px;
  }

  .published-region-kicker {
    margin-bottom: 12px;
    font-size: 9px;
    letter-spacing: 0.19em;
  }

  .published-region-hero h1 {
    max-width: 540px;
    font-size: clamp(45px, 13.5vw, 72px);
    line-height: 0.9;
  }

  .published-region-hero > p {
    max-width: 480px;
    margin-top: 19px;
    font-size: 16px;
    line-height: 1.45;
  }

  .published-region-actions {
    margin-top: 22px;
  }

  .published-region-actions > a,
  .published-region-actions > button {
    min-height: 44px;
    font-size: 11px;
  }

  .published-region-hero > small {
    bottom: 28px;
    left: 24px;
    font-size: 8px;
  }
}

/* Cafeteria scene polish — v1.1.18 */
.published-home .published-hero-slider.is-cafeteria-active,
body.home .published-home .published-hero-slider.is-cafeteria-active,
body.front-page .published-home .published-hero-slider.is-cafeteria-active,
body.page-template-front-page .published-home .published-hero-slider.is-cafeteria-active {
  width: 100% !important;
  max-width: none !important;
  overflow: hidden !important;
  background: #082f21 !important;
  isolation: isolate;
}

.published-home .published-hero-slider > img.published-cafeteria-hero-image,
body.home .published-home .published-hero-slider > img.published-cafeteria-hero-image,
body.front-page .published-home .published-hero-slider > img.published-cafeteria-hero-image,
body.page-template-front-page .published-home .published-hero-slider > img.published-cafeteria-hero-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 61% center !important;
  border-radius: 0 !important;
}

.published-cafeteria-hero-stamp {
  overflow: hidden;
  border: 1px solid rgba(255, 248, 234, 0.86) !important;
  background: linear-gradient(145deg, #ff865e, #ee6844) !important;
  box-shadow:
    0 18px 44px rgba(1, 31, 19, 0.28),
    inset 0 0 0 6px rgba(255, 248, 234, 0.1) !important;
  transform: rotate(4deg) !important;
}

.published-cafeteria-hero-stamp::after {
  position: absolute;
  inset: 7px;
  border: 1px solid rgba(255, 248, 234, 0.42);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.published-cafeteria-hero-stamp strong {
  position: relative;
  z-index: 1;
  max-width: 86%;
  font-size: clamp(24px, 2.35vw, 36px) !important;
  letter-spacing: -0.02em;
  line-height: 0.86 !important;
}

@media (max-width: 620px) {
  .published-home .published-hero-slider.is-cafeteria-active,
  body.home .published-home .published-hero-slider.is-cafeteria-active,
  body.front-page .published-home .published-hero-slider.is-cafeteria-active,
  body.page-template-front-page .published-home .published-hero-slider.is-cafeteria-active {
    width: 100vw !important;
    min-width: 100% !important;
    height: min(820px, 88svh) !important;
    min-height: 680px !important;
    margin-inline: 0 !important;
    border-radius: 0 !important;
  }

  .published-home .published-hero-slider.is-cafeteria-active::before,
  body.home .published-home .published-hero-slider.is-cafeteria-active::before,
  body.front-page .published-home .published-hero-slider.is-cafeteria-active::before,
  body.page-template-front-page .published-home .published-hero-slider.is-cafeteria-active::before {
    background:
      linear-gradient(180deg, rgba(2, 28, 19, 0.08) 0%, rgba(2, 35, 23, 0.18) 38%, rgba(2, 42, 27, 0.88) 72%, rgba(2, 37, 24, 0.98) 100%) !important;
  }

  .published-home .published-hero-slider > img.published-cafeteria-hero-image,
  body.home .published-home .published-hero-slider > img.published-cafeteria-hero-image,
  body.front-page .published-home .published-hero-slider > img.published-cafeteria-hero-image,
  body.page-template-front-page .published-home .published-hero-slider > img.published-cafeteria-hero-image {
    object-position: 64% center !important;
  }

  .published-cafeteria-hero {
    justify-content: flex-end !important;
    padding: 104px 20px 96px !important;
  }

  .published-cafeteria-hero-kicker {
    max-width: 250px !important;
    margin-bottom: 12px !important;
  }

  .published-cafeteria-hero h2 {
    max-width: calc(100vw - 40px) !important;
    margin-bottom: 14px !important;
    font-size: clamp(48px, 15.5vw, 62px) !important;
    line-height: 0.88 !important;
    letter-spacing: -0.025em;
  }

  .published-cafeteria-hero > p {
    max-width: 330px !important;
    font-size: 15px !important;
    line-height: 1.48 !important;
  }

  .published-cafeteria-hero-points {
    margin: 18px 0 20px !important;
  }

  .published-cafeteria-hero-stamp {
    top: 88px !important;
    right: 18px !important;
    width: 92px !important;
  }

  .published-cafeteria-hero-stamp strong {
    font-size: 24px !important;
  }

  .published-hero-slider.is-cafeteria-active .hero-media-arrow {
    top: 31% !important;
    bottom: auto !important;
  }
}

@media (max-width: 480px) {
  .published-region-hero {
    padding-right: 20px;
    padding-left: 20px;
  }

  .published-region-hero h1 {
    font-size: clamp(41px, 13vw, 58px);
  }

  .published-region-actions {
    width: 100%;
    align-items: stretch;
  }

  .published-region-actions > a {
    flex: 1 1 170px;
  }

  .published-region-actions > button {
    flex: 0 0 auto;
    padding-inline: 14px;
  }

  .published-region-hero > small {
    left: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .published-home .published-hero-slider > video.published-region-video,
  body.home .published-home .published-hero-slider > video.published-region-video,
  body.front-page .published-home .published-hero-slider > video.published-region-video,
  body.page-template-front-page .published-home .published-hero-slider > video.published-region-video,
  .published-region-hero {
    transition: none !important;
  }
}

/* Editorial launch scene and tactile carousel transitions - v1.1.14 */
.published-home .published-hero-slider.is-cover-active,
body.home .published-home .published-hero-slider.is-cover-active,
body.front-page .published-home .published-hero-slider.is-cover-active,
body.page-template-front-page .published-home .published-hero-slider.is-cover-active {
  --cover-cream: #f5e6d1;
  --cover-coral: #f47b50;
  --cover-wine: #8f1f25;
  background:
    linear-gradient(115deg, #f8eddd 0 47%, #edc7ad 47.2% 61%, #d96f50 61.2% 100%) !important;
}

.published-home .published-hero-slider.is-cover-active::before,
body.home .published-home .published-hero-slider.is-cover-active::before,
body.front-page .published-home .published-hero-slider.is-cover-active::before,
body.page-template-front-page .published-home .published-hero-slider.is-cover-active::before {
  inset: 0 !important;
  z-index: 0 !important;
  background:
    radial-gradient(circle at 75% 50%, rgba(255, 248, 236, 0.98) 0 24%, rgba(255, 232, 211, 0.76) 24.4% 38%, transparent 38.4%),
    repeating-linear-gradient(0deg, transparent 0 34px, rgba(126, 25, 30, 0.035) 35px 36px),
    linear-gradient(115deg, transparent 0 46%, rgba(255, 248, 236, 0.18) 46.2% 100%) !important;
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
}

.published-home .published-hero-slider.is-cover-active::after,
body.home .published-home .published-hero-slider.is-cover-active::after,
body.front-page .published-home .published-hero-slider.is-cover-active::after,
body.page-template-front-page .published-home .published-hero-slider.is-cover-active::after {
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(90deg, rgba(248, 237, 221, 0.99) 0 42%, rgba(248, 237, 221, 0.72) 50%, transparent 63%),
    radial-gradient(circle at 89% 14%, rgba(143, 31, 37, 0.18), transparent 23%) !important;
  opacity: 1 !important;
}

.published-home .published-hero-slider > img.published-cover-image,
body.home .published-home .published-hero-slider > img.published-cover-image,
body.front-page .published-home .published-hero-slider > img.published-cover-image,
body.page-template-front-page .published-home .published-hero-slider > img.published-cover-image {
  top: 50% !important;
  right: -3vw !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 3 !important;
  width: min(59vw, 1060px) !important;
  max-width: none !important;
  max-height: 86% !important;
  margin: 0 !important;
  border-radius: 34px !important;
  mix-blend-mode: multiply;
  object-fit: contain !important;
  filter:
    drop-shadow(0 34px 54px rgba(98, 49, 31, 0.2))
    saturate(1.06)
    contrast(1.02) !important;
  transform: translateY(-50%) translate3d(40px, 22px, 0) rotate(0deg) scale(1.035) !important;
}

.published-home .published-hero-slider > img.published-cover-image.is-active,
body.home .published-home .published-hero-slider > img.published-cover-image.is-active,
body.front-page .published-home .published-hero-slider > img.published-cover-image.is-active,
body.page-template-front-page .published-home .published-hero-slider > img.published-cover-image.is-active {
  animation: cariama-package-arrive 1250ms cubic-bezier(0.22, 1, 0.36, 1) both !important;
}

.published-cover-callout,
body.home .published-cover-callout,
body.front-page .published-cover-callout,
body.page-template-front-page .published-cover-callout {
  top: 50% !important;
  left: clamp(66px, 7.2vw, 138px) !important;
  z-index: 7 !important;
  display: flex !important;
  width: min(43vw, 660px) !important;
  max-width: 660px !important;
  flex-direction: column !important;
  gap: clamp(10px, 1.15vw, 18px) !important;
  align-items: flex-start !important;
  color: #5b3423 !important;
  text-align: left !important;
  transform: translateY(-47%) translateX(-28px) !important;
}

.published-cover-callout.is-active,
body.home .published-cover-callout.is-active,
body.front-page .published-cover-callout.is-active,
body.page-template-front-page .published-cover-callout.is-active {
  pointer-events: none !important;
  transform: translateY(-50%) translateX(0) !important;
}

.published-cover-callout::before,
body.home .published-cover-callout::before,
body.front-page .published-cover-callout::before,
body.page-template-front-page .published-cover-callout::before {
  top: 50% !important;
  left: -0.12em !important;
  z-index: -1 !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
  background: none !important;
  color: rgba(143, 31, 37, 0.045) !important;
  content: "NOVA" !important;
  font-family: var(--strong-font) !important;
  font-size: clamp(150px, 17vw, 310px) !important;
  line-height: 0.72 !important;
  mix-blend-mode: multiply !important;
  opacity: 1 !important;
  transform: translateY(-46%) rotate(-4deg) !important;
}

.published-cover-callout::after,
body.home .published-cover-callout::after,
body.front-page .published-cover-callout::after,
body.page-template-front-page .published-cover-callout::after {
  display: none !important;
}

.published-cover-brand {
  width: clamp(52px, 4.8vw, 82px) !important;
  aspect-ratio: 1 !important;
  margin: 0 0 2px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 10px 18px rgba(92, 48, 32, 0.16)) !important;
}

.published-cover-callout .published-cover-kicker {
  color: #8f1f25 !important;
  font-size: clamp(9px, 0.72vw, 12px) !important;
  letter-spacing: 0.2em !important;
}

.published-cover-callout strong {
  max-width: 650px !important;
  color: #075b37 !important;
  font-size: clamp(48px, 4.65vw, 84px) !important;
  line-height: 0.88 !important;
  letter-spacing: -0.035em !important;
}

.published-cover-callout em {
  max-width: 555px !important;
  margin-top: 2px !important;
  color: #65412d !important;
  font-family: var(--footer-font) !important;
  font-size: clamp(15px, 1.08vw, 20px) !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
}

.published-cover-meta {
  display: flex;
  max-width: 610px;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}

.published-cover-meta span {
  display: inline-flex;
  gap: 6px;
  align-items: baseline;
  border: 1px solid rgba(143, 31, 37, 0.16);
  border-radius: 999px;
  padding: 7px 11px;
  background: rgba(255, 248, 236, 0.64);
  color: #72503b;
  font-family: var(--footer-font);
  font-size: 10px;
  font-weight: 700;
  backdrop-filter: blur(8px);
}

.published-cover-meta b {
  color: #8f1f25;
  font-weight: 900;
  text-transform: uppercase;
}

.published-cover-callout a {
  min-height: 50px !important;
  margin-top: 4px !important;
  border: 0 !important;
  padding: 0 24px !important;
  background: #f47b50 !important;
  box-shadow: 0 15px 30px rgba(196, 78, 43, 0.2) !important;
  color: #fff8ec !important;
  pointer-events: auto !important;
}

.published-cover-callout a:hover {
  background: #8f1f25 !important;
  box-shadow: 0 20px 38px rgba(143, 31, 37, 0.24) !important;
  transform: translateY(-3px) !important;
}

.hero-transition-flare {
  position: absolute;
  inset: -15% auto -15% -28%;
  z-index: 5;
  display: block;
  width: 50%;
  border-radius: 50%;
  background:
    linear-gradient(90deg, transparent, color-mix(in srgb, var(--hero-accent, #f47b50) 56%, transparent), rgba(255, 248, 236, 0.82), transparent);
  opacity: 0;
  pointer-events: none;
  filter: blur(12px);
  mix-blend-mode: screen;
  transform: translateX(-125%) skewX(-12deg);
}

.published-hero-slider.is-hero-next .hero-transition-flare.is-active {
  animation: cariama-flare-next 1050ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.published-hero-slider.is-hero-previous .hero-transition-flare {
  right: -28%;
  left: auto;
  transform: translateX(125%) skewX(12deg);
}

.published-hero-slider.is-hero-previous .hero-transition-flare.is-active {
  animation: cariama-flare-previous 1050ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.published-hero-slider.is-hero-next > [data-hero-image].is-active {
  animation: cariama-reveal-next 1100ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.published-hero-slider.is-hero-previous > [data-hero-image].is-active {
  animation: cariama-reveal-previous 1100ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.published-hero-slider.is-hero-next > img.published-cover-image.is-active {
  animation:
    cariama-reveal-next 1100ms cubic-bezier(0.22, 1, 0.36, 1) both,
    cariama-package-arrive 1250ms cubic-bezier(0.22, 1, 0.36, 1) both !important;
}

.published-hero-slider.is-hero-previous > img.published-cover-image.is-active {
  animation:
    cariama-reveal-previous 1100ms cubic-bezier(0.22, 1, 0.36, 1) both,
    cariama-package-arrive 1250ms cubic-bezier(0.22, 1, 0.36, 1) both !important;
}

.published-cafeteria-hero.is-active {
  pointer-events: none;
}

.published-cafeteria-hero.is-active > a {
  pointer-events: auto;
}

.published-hero-slider.is-manual-switch.is-hero-next .hero-media-arrow-next,
.published-hero-slider.is-manual-switch.is-hero-previous .hero-media-arrow-prev {
  animation: cariama-arrow-response 720ms cubic-bezier(0.22, 1, 0.36, 1);
}

.published-hero-slider.is-hero-switching .published-region-hero.is-active,
.published-hero-slider.is-hero-switching .published-cover-callout.is-active,
.published-hero-slider.is-hero-switching .published-cafeteria-hero.is-active {
  animation: cariama-copy-rise 900ms 120ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.published-hero-slider .hero-media-dots button.is-active {
  background: var(--hero-accent, #f47b50) !important;
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--hero-accent, #f47b50) 24%, transparent) !important;
}

.published-hero-slider .hero-autoplay-progress span {
  background: linear-gradient(90deg, var(--hero-accent, #f47b50), #fff8ec) !important;
}

@keyframes cariama-package-arrive {
  from {
    opacity: 0;
    transform: translateY(-50%) translate3d(95px, 42px, 0) rotate(2deg) scale(1.09);
  }
  to {
    opacity: 1;
    transform: translateY(-50%) translate3d(0, 0, 0) rotate(0) scale(1);
  }
}

@keyframes cariama-flare-next {
  0% { opacity: 0; transform: translateX(-125%) skewX(-12deg); }
  28% { opacity: 0.9; }
  100% { opacity: 0; transform: translateX(300%) skewX(-12deg); }
}

@keyframes cariama-flare-previous {
  0% { opacity: 0; transform: translateX(125%) skewX(12deg); }
  28% { opacity: 0.9; }
  100% { opacity: 0; transform: translateX(-300%) skewX(12deg); }
}

@keyframes cariama-reveal-next {
  from { clip-path: inset(0 0 0 100%); }
  to { clip-path: inset(0 0 0 0); }
}

@keyframes cariama-reveal-previous {
  from { clip-path: inset(0 100% 0 0); }
  to { clip-path: inset(0 0 0 0); }
}

@keyframes cariama-arrow-response {
  0%, 100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--hero-accent, #f47b50) 0%, transparent); }
  42% {
    box-shadow:
      0 0 0 13px color-mix(in srgb, var(--hero-accent, #f47b50) 22%, transparent),
      0 18px 38px rgba(35, 21, 13, 0.24);
  }
}

@keyframes cariama-copy-rise {
  from { opacity: 0; transform: translate3d(0, 30px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}

@media (max-width: 782px) {
  .published-home .published-hero-slider.is-cover-active,
  body.home .published-home .published-hero-slider.is-cover-active,
  body.front-page .published-home .published-hero-slider.is-cover-active,
  body.page-template-front-page .published-home .published-hero-slider.is-cover-active {
    aspect-ratio: auto !important;
    height: 86svh !important;
    min-height: 760px !important;
    max-height: 880px !important;
    background: linear-gradient(160deg, #f8eddd 0 58%, #efc3a7 58.2% 72%, #d96f50 72.2% 100%) !important;
  }

  .published-home .published-hero-slider.is-cover-active::before,
  body.home .published-home .published-hero-slider.is-cover-active::before,
  body.front-page .published-home .published-hero-slider.is-cover-active::before,
  body.page-template-front-page .published-home .published-hero-slider.is-cover-active::before {
    background:
      radial-gradient(circle at 52% 81%, rgba(255, 248, 236, 0.98) 0 23%, rgba(255, 232, 211, 0.7) 23.5% 37%, transparent 37.5%),
      repeating-linear-gradient(0deg, transparent 0 28px, rgba(126, 25, 30, 0.03) 29px 30px) !important;
  }

  .published-home .published-hero-slider.is-cover-active::after,
  body.home .published-home .published-hero-slider.is-cover-active::after,
  body.front-page .published-home .published-hero-slider.is-cover-active::after,
  body.page-template-front-page .published-home .published-hero-slider.is-cover-active::after {
    background: linear-gradient(180deg, rgba(248, 237, 221, 0.99) 0 55%, rgba(248, 237, 221, 0.52) 68%, transparent 82%) !important;
  }

  .published-cover-callout,
  body.home .published-cover-callout,
  body.front-page .published-cover-callout,
  body.page-template-front-page .published-cover-callout {
    top: 92px !important;
    right: 20px !important;
    left: 20px !important;
    width: auto !important;
    max-width: 520px !important;
    gap: 9px !important;
    transform: translateY(0) translateX(-18px) !important;
  }

  .published-cover-callout.is-active,
  body.home .published-cover-callout.is-active,
  body.front-page .published-cover-callout.is-active,
  body.page-template-front-page .published-cover-callout.is-active {
    pointer-events: none !important;
    transform: translateY(0) translateX(0) !important;
  }

  .published-cover-callout::before,
  body.home .published-cover-callout::before,
  body.front-page .published-cover-callout::before,
  body.page-template-front-page .published-cover-callout::before {
    top: 48% !important;
    left: -0.05em !important;
    width: auto !important;
    color: rgba(143, 31, 37, 0.04) !important;
    font-size: clamp(124px, 41vw, 184px) !important;
    opacity: 1 !important;
    transform: translateY(-50%) rotate(-5deg) !important;
  }

  .published-cover-brand {
    width: 52px !important;
  }

  .published-cover-callout strong {
    max-width: 430px !important;
    font-size: clamp(40px, 11.2vw, 58px) !important;
  }

  .published-cover-callout em {
    max-width: min(88vw, 430px) !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
  }

  .published-cover-meta {
    gap: 5px;
    margin-top: 1px;
  }

  .published-cover-meta span {
    padding: 5px 8px;
    font-size: 8px;
  }

  .published-cover-callout a {
    min-height: 44px !important;
    padding: 0 18px !important;
    font-size: 11px !important;
  }

  .published-home .published-hero-slider > img.published-cover-image,
  body.home .published-home .published-hero-slider > img.published-cover-image,
  body.front-page .published-home .published-hero-slider > img.published-cover-image,
  body.page-template-front-page .published-home .published-hero-slider > img.published-cover-image {
    right: 50% !important;
    top: auto !important;
    bottom: 18px !important;
    width: min(98vw, 650px) !important;
    max-height: 330px !important;
    border-radius: 22px !important;
    transform: translateX(50%) translate3d(24px, 16px, 0) rotate(0) scale(1.035) !important;
  }

  .published-home .published-hero-slider > img.published-cover-image.is-active,
  body.home .published-home .published-hero-slider > img.published-cover-image.is-active,
  body.front-page .published-home .published-hero-slider > img.published-cover-image.is-active,
  body.page-template-front-page .published-home .published-hero-slider > img.published-cover-image.is-active {
    animation: cariama-package-arrive-mobile 1250ms cubic-bezier(0.22, 1, 0.36, 1) both !important;
  }

  .published-hero-slider.is-hero-next > img.published-cover-image.is-active {
    animation:
      cariama-reveal-next 1100ms cubic-bezier(0.22, 1, 0.36, 1) both,
      cariama-package-arrive-mobile 1250ms cubic-bezier(0.22, 1, 0.36, 1) both !important;
  }

  .published-hero-slider.is-hero-previous > img.published-cover-image.is-active {
    animation:
      cariama-reveal-previous 1100ms cubic-bezier(0.22, 1, 0.36, 1) both,
      cariama-package-arrive-mobile 1250ms cubic-bezier(0.22, 1, 0.36, 1) both !important;
  }

  .hero-transition-flare {
    width: 72%;
  }
}

@keyframes cariama-package-arrive-mobile {
  from {
    opacity: 0;
    transform: translateX(50%) translate3d(70px, 28px, 0) rotate(2deg) scale(1.08);
  }
  to {
    opacity: 1;
    transform: translateX(50%) translate3d(0, 0, 0) rotate(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .published-home .published-hero-slider > img.published-cover-image.is-active,
  body.home .published-home .published-hero-slider > img.published-cover-image.is-active,
  body.front-page .published-home .published-hero-slider > img.published-cover-image.is-active,
  body.page-template-front-page .published-home .published-hero-slider > img.published-cover-image.is-active,
  .published-hero-slider.is-hero-next > [data-hero-image].is-active,
  .published-hero-slider.is-hero-previous > [data-hero-image].is-active {
    animation: none !important;
  }

  .hero-transition-flare {
    display: none !important;
  }
}

/* Seamless home carousel — v1.1.17 */
.hero-transition-flare {
  display: none !important;
}

.published-home .published-hero-slider > [data-hero-image],
body.home .published-home .published-hero-slider > [data-hero-image],
body.front-page .published-home .published-hero-slider > [data-hero-image],
body.page-template-front-page .published-home .published-hero-slider > [data-hero-image] {
  clip-path: none !important;
  animation: none !important;
  transition:
    opacity 1150ms ease-in-out,
    transform 1450ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.published-home .published-hero-slider > img[data-hero-image],
body.home .published-home .published-hero-slider > img[data-hero-image],
body.front-page .published-home .published-hero-slider > img[data-hero-image],
body.page-template-front-page .published-home .published-hero-slider > img[data-hero-image],
.published-home .published-hero-slider > img[data-hero-image].is-active,
body.home .published-home .published-hero-slider > img[data-hero-image].is-active,
body.front-page .published-home .published-hero-slider > img[data-hero-image].is-active,
body.page-template-front-page .published-home .published-hero-slider > img[data-hero-image].is-active {
  filter: saturate(1.04) contrast(1.02) !important;
}

.published-hero-slider.is-hero-next > [data-hero-image].is-active,
.published-hero-slider.is-hero-previous > [data-hero-image].is-active,
.published-hero-slider.is-hero-next > img.published-cover-image.is-active,
.published-hero-slider.is-hero-previous > img.published-cover-image.is-active,
.published-hero-slider.is-hero-switching .published-region-hero.is-active,
.published-hero-slider.is-hero-switching .published-cover-callout.is-active,
.published-hero-slider.is-hero-switching .published-cafeteria-hero.is-active,
.published-hero-slider.is-manual-switch .hero-media-arrow {
  clip-path: none !important;
  animation: none !important;
}

.published-region-hero,
.published-cover-callout,
.published-cafeteria-hero {
  transition: opacity 900ms ease-in-out !important;
}

.published-region-hero,
.published-region-hero.is-active {
  transform: translate3d(0, 0, 0) !important;
}

.published-cafeteria-hero,
.published-cafeteria-hero.is-active {
  transform: translateX(0) !important;
}

@media (min-width: 783px) {
  .published-cover-callout,
  .published-cover-callout.is-active,
  body.home .published-cover-callout,
  body.home .published-cover-callout.is-active,
  body.front-page .published-cover-callout,
  body.front-page .published-cover-callout.is-active,
  body.page-template-front-page .published-cover-callout,
  body.page-template-front-page .published-cover-callout.is-active {
    transform: translateY(-50%) translateX(0) !important;
  }
}

@media (max-width: 782px) {
  .published-cover-callout,
  .published-cover-callout.is-active,
  body.home .published-cover-callout,
  body.home .published-cover-callout.is-active,
  body.front-page .published-cover-callout,
  body.front-page .published-cover-callout.is-active,
  body.page-template-front-page .published-cover-callout,
  body.page-template-front-page .published-cover-callout.is-active {
    transform: translateY(0) translateX(0) !important;
  }
}
