body.overview-page {
  background: radial-gradient(circle at 7% 12%, rgba(89, 190, 66, .12), transparent 28%), #f4f1e9;
  color: #07152d;
  overflow-x: hidden;
}

.overview-page .event-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(244, 241, 233, .86);
  backdrop-filter: blur(14px);
}

.overview-page .event-header-inner {
  max-width: 1660px;
  border-radius: 0 0 22px 22px;
}

.overview-shell {
  width: min(1660px, calc(100% - 64px));
  margin: 18px auto 70px;
  padding: 0 0 22px;
}

.overview-chips {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 4px 2px 16px;
  scrollbar-width: none;
}

.overview-chips::-webkit-scrollbar {
  display: none;
}

.overview-chips a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid rgba(7, 21, 45, .1);
  border-radius: 13px;
  background: rgba(255, 255, 255, .82);
  color: #101b32;
  font-weight: 650;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 10px 28px rgba(13, 24, 42, .05);
}

.overview-chips a.active,
.overview-chips a:hover {
  border-color: #0d7b43;
  background: #0d7b43;
  color: #fff;
}

.overview-chips svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.overview-hero-ad {
  position: relative;
  display: block;
  min-height: 280px;
  overflow: hidden;
  border-radius: 18px;
  background: #062916;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 22px 60px rgba(8, 38, 24, .16);
}

.overview-hero-ad img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.01);
}

.overview-hero-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(2, 28, 14, .92) 0%, rgba(2, 28, 14, .62) 34%, rgba(2, 28, 14, .08) 72%);
}

.overview-ad-copy {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
  width: min(520px, 54%);
  padding: 42px 48px;
}

.overview-ad-badge,
.overview-partner {
  display: inline-flex;
  align-items: center;
  border-radius: 14px;
  background: rgba(255, 255, 255, .18);
  color: #e9fff0;
  font-size: 13px;
  font-weight: 750;
}

.overview-ad-badge {
  padding: 8px 13px;
}

.overview-partner {
  position: absolute;
  right: 30px;
  top: 30px;
  z-index: 1;
  padding: 12px 18px;
  background: rgba(13, 123, 67, .88);
  line-height: 1.1;
  text-align: left;
}

.overview-ad-copy strong {
  font-size: clamp(30px, 3vw, 46px);
  line-height: 1.04;
  letter-spacing: 0;
}

.overview-ad-copy small {
  color: rgba(255, 255, 255, .9);
  font-size: 18px;
  line-height: 1.45;
}

.overview-ad-button {
  min-height: 52px;
  padding: 0 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #fff;
  color: #0d2919;
  font-weight: 800;
}

.overview-section {
  margin-top: 22px;
}

.overview-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.overview-section-head h2 {
  margin: 0;
  font-size: 24px;
  line-height: 1.1;
  font-weight: 780;
  color: #101827;
}

.overview-section-head a {
  color: #0d7b43;
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
  white-space: nowrap;
}

.overview-rail,
.overview-logo-rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(190px, 1fr);
  gap: 16px;
  overflow-x: auto;
  padding: 2px 2px 10px;
  scrollbar-width: none;
}

.overview-rail::-webkit-scrollbar,
.overview-logo-rail::-webkit-scrollbar {
  display: none;
}

.media-card {
  min-width: 0;
  color: #07152d;
  text-decoration: none;
}

.media-wrap {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 12px;
  background: #eef5ee;
  box-shadow: inset 0 0 0 1px rgba(7, 21, 45, .06);
}

.media-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.media-badge {
  position: absolute;
  left: 10px;
  bottom: 9px;
  padding: 6px 9px;
  border-radius: 9px;
  background: rgba(13, 123, 67, .92);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.media-card strong {
  display: block;
  margin-top: 9px;
  color: #101827;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.25;
}

.media-card small {
  display: block;
  margin-top: 3px;
  color: #5f6d82;
  font-size: 14px;
}

.overview-module-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px 16px;
  margin-top: 18px;
}

.overview-mini-module {
  position: relative;
  display: flex;
  min-height: 92px;
  overflow: hidden;
  border: 1px solid rgba(7, 21, 45, .09);
  border-radius: 16px;
  background: #fff;
  color: #101827;
  text-decoration: none;
  box-shadow: 0 16px 40px rgba(11, 31, 51, .06);
}

.overview-mini-module span {
  position: relative;
  z-index: 1;
  width: 52%;
  padding: 20px 18px;
}

.overview-mini-module strong,
.overview-mini-module small {
  display: block;
}

.overview-mini-module strong {
  margin-bottom: 8px;
  font-size: 20px;
  line-height: 1.08;
  font-weight: 780;
}

.overview-mini-module small {
  color: #526176;
  font-size: 14px;
  line-height: 1.3;
}

.overview-mini-module img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 48%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  mask-image: linear-gradient(90deg, transparent 0%, #000 28%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 28%);
}

.compact-rail {
  grid-auto-columns: minmax(270px, 1fr);
}

.compact-card,
.event-preview-card,
.overview-fuel-card,
.overview-logo-card {
  border: 1px solid rgba(7, 21, 45, .09);
  border-radius: 16px;
  background: white;
  color: #101827;
  text-decoration: none;
  box-shadow: 0 16px 40px rgba(11, 31, 51, .06);
}

.compact-card,
.event-preview-card {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  overflow: hidden;
  min-height: 126px;
}

.compact-card img,
.event-preview-card img {
  width: 132px;
  height: 100%;
  object-fit: cover;
}

.compact-card span,
.event-preview-card span {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 15px;
}

.compact-card strong,
.event-preview-card strong {
  font-size: 16px;
  line-height: 1.2;
  font-weight: 760;
}

.compact-card small,
.compact-card em,
.event-preview-card small {
  color: #5f6d82;
  font-size: 13px;
  font-style: normal;
}

.event-preview-card em,
.event-preview-card b {
  align-self: flex-start;
  border-radius: 999px;
  background: #eaf8e7;
  color: #0d7b43;
  padding: 5px 8px;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.overview-fuel-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.overview-fuel-card {
  display: block;
  padding: 18px;
}

.overview-fuel-card strong,
.overview-fuel-card small {
  display: block;
}

.overview-fuel-card small {
  margin-top: 6px;
  color: #5f6d82;
}

.overview-fuel-card span {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.overview-fuel-card b {
  border-radius: 999px;
  background: #f0f5ed;
  color: #0d7b43;
  padding: 7px 9px;
  font-size: 12px;
}

.overview-logo-rail {
  grid-auto-columns: 160px;
}

.overview-logo-card {
  display: grid;
  place-items: center;
  gap: 12px;
  min-height: 118px;
  padding: 16px;
  text-align: center;
}

.overview-logo-card img {
  width: 54px;
  height: 54px;
  object-fit: cover;
  border-radius: 15px;
}

.overview-logo-card strong {
  max-width: 100%;
  color: #101827;
  font-size: 14px;
  line-height: 1.2;
}

/* Partners intentionally reuse the old compact “popular companies” card language:
   one corrected square company photo + company name, nothing ad-like. */
#overviewPartners .overview-logo-rail { grid-auto-columns: 160px; }
#overviewPartners .overview-logo-card { min-height: 118px; }
#overviewPartners .overview-logo-card img { width: 58px; height: 58px; border-radius: 16px; object-fit: cover; }
#overviewPartners .overview-logo-card strong { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }

.overview-page a:focus-visible {
  outline: 3px solid rgba(13, 123, 67, .32);
  outline-offset: 3px;
}

@media (min-width: 1180px) {
  .overview-rail {
    grid-auto-columns: calc((100% - 80px) / 6);
  }

  .food-rail {
    grid-auto-columns: calc((100% - 80px) / 6);
  }

  .compact-rail,
  .event-rail {
    grid-auto-columns: calc((100% - 48px) / 4);
  }
}

@media (max-width: 1023px) {
  .overview-shell {
    width: min(100% - 28px, 860px);
    margin-top: 12px;
  }

  .overview-hero-ad {
    min-height: 230px;
  }

  .overview-ad-copy {
    width: 70%;
    padding: 30px;
  }

  .overview-module-grid,
  .overview-fuel-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  body.overview-page {
    padding-bottom: calc(98px + env(safe-area-inset-bottom));
  }

  .overview-page .event-header {
    background: rgba(255, 255, 255, .92);
  }

  .overview-shell {
    width: 100%;
    margin: 10px 0 44px;
    padding: 0 14px;
  }

  .overview-chips {
    margin-inline: -14px;
    padding: 4px 14px 12px;
    gap: 8px;
  }

  .overview-chips a {
    min-height: 39px;
    padding: 0 14px;
    font-size: 14px;
  }

  .overview-hero-ad {
    min-height: 210px;
    border-radius: 18px;
  }

  .overview-hero-shade {
    background: linear-gradient(90deg, rgba(2, 28, 14, .94) 0%, rgba(2, 28, 14, .62) 48%, rgba(2, 28, 14, .18) 100%);
  }

  .overview-ad-copy {
    width: 78%;
    gap: 12px;
    padding: 22px;
  }

  .overview-ad-copy strong {
    font-size: 24px;
  }

  .overview-ad-copy small {
    font-size: 14px;
  }

  .overview-ad-button {
    min-height: 44px;
    padding: 0 20px;
  }

  .overview-partner {
    display: none;
  }

  .overview-section {
    margin-top: 20px;
  }

  .overview-section-head h2 {
    font-size: 21px;
  }

  .overview-rail {
    grid-auto-columns: 190px;
    gap: 10px;
    margin-inline: -14px;
    padding-inline: 14px;
  }

  .media-card strong {
    font-size: 14px;
  }

  .overview-module-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .overview-mini-module {
    min-height: 128px;
  }

  .overview-mini-module span {
    width: 100%;
    padding: 16px;
  }

  .overview-mini-module strong {
    font-size: 16px;
  }

  .overview-mini-module img {
    width: 70%;
    height: 58px;
    opacity: .72;
  }

  .compact-rail,
  .event-rail {
    grid-auto-columns: minmax(270px, 80vw);
  }

  .overview-fuel-grid {
    grid-template-columns: 1fr;
  }

  .overview-logo-rail {
    grid-auto-columns: 124px;
    margin-inline: -14px;
    padding-inline: 14px;
  }
}

/* Final overview polish: content shelves instead of category blocks. */
.overview-page {
  font-family: Inter, "Segoe UI", Arial, sans-serif;
}

.overview-page .event-header {
  box-shadow: 0 10px 26px rgba(13, 24, 42, .06);
}

.overview-shell {
  margin-top: 14px;
}

.overview-chips {
  padding-bottom: 14px;
}

.overview-hero-ad {
  min-height: 196px;
  max-height: 216px;
  border: 1px solid rgba(7, 21, 45, .08);
}

.overview-hero-ad img {
  object-position: center 54%;
}

.overview-ad-copy {
  width: min(440px, 50%);
  padding: 26px 34px;
}

.overview-ad-copy strong {
  font-size: clamp(24px, 2.05vw, 34px);
}

.overview-ad-copy small {
  font-size: 14px;
  line-height: 1.38;
}

.overview-ad-badge {
  padding: 7px 11px;
}

.overview-ad-button {
  min-height: 40px;
  padding: 0 18px;
  border-radius: 10px;
}

.overview-partner {
  top: 18px;
  right: 18px;
  padding: 9px 14px;
}

.overview-section {
  margin-top: 26px;
}

.overview-section-head h2 {
  font-size: 22px;
  font-weight: 760;
}

.overview-rail.media-rail,
.overview-rail.movie-rail,
.overview-rail.food-rail {
  align-items: stretch;
}

.media-card {
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(7, 21, 45, .08);
  border-radius: 16px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 14px 34px rgba(11, 31, 51, .055);
  transition: transform .18s ease, box-shadow .18s ease;
}

.media-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgba(11, 31, 51, .085);
}

.media-wrap,
.food-card .media-wrap,
.car-card .media-wrap,
.event-card-flat .media-wrap,
.product-card .media-wrap,
.service-card .media-wrap,
.room-card .media-wrap {
  aspect-ratio: 16 / 8.8;
  border-radius: 0;
  box-shadow: none;
}

.media-wrap img,
.food-card .media-wrap img,
.product-card .media-wrap img,
.service-card .media-wrap img,
.car-card .media-wrap img,
.event-card-flat .media-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.food-card .media-wrap img {
  object-position: center 48%;
}

.car-card .media-wrap img {
  object-position: center 52%;
}

.event-card-flat .media-wrap img {
  object-position: center 50%;
}

.media-card strong,
.media-card small {
  padding-inline: 12px;
}

.media-card strong {
  min-height: 2.45em;
  margin-top: 10px;
  font-size: 15px;
  font-weight: 740;
}

.media-card small {
  margin: 0 0 12px;
  font-size: 13px;
}

.media-badge {
  left: 9px;
  bottom: 8px;
  padding: 5px 8px;
  border-radius: 999px;
  font-size: 11px;
}

.overview-fuel-card {
  min-height: 116px;
  border-radius: 16px;
}

@media (min-width: 1180px) {
  .overview-hero-ad {
    max-height: 210px;
  }

  .overview-rail.media-rail,
  .overview-rail.movie-rail,
  .overview-rail.food-rail {
    grid-auto-columns: calc((100% - 70px) / 6);
  }
}

@media (max-width: 767px) {
  .overview-shell {
    width: min(100% - 28px, 480px);
    margin-top: 10px;
  }

  .overview-hero-ad {
    min-height: 152px;
  }

  .overview-ad-copy {
    width: 78%;
    padding: 16px;
  }

  .overview-ad-copy strong {
    font-size: 21px;
  }

  .overview-ad-copy small,
  .overview-partner {
    display: none;
  }

  .overview-rail.media-rail,
  .overview-rail.movie-rail,
  .overview-rail.food-rail {
    grid-auto-columns: 160px;
  }

  .media-wrap,
  .food-card .media-wrap,
  .car-card .media-wrap,
  .event-card-flat .media-wrap,
  .product-card .media-wrap,
  .service-card .media-wrap,
  .room-card .media-wrap {
    aspect-ratio: 16 / 9.4;
  }

  .media-card strong {
    font-size: 13px;
  }
}

@media (max-width: 360px) {
  .overview-module-grid {
    grid-template-columns: 1fr;
  }

  .overview-ad-copy {
    width: 88%;
  }
}

/* Overview content pass: no category tiles, only real content rails. */
.overview-page .event-header-inner {
  border-radius: 0 0 20px 20px;
}

.overview-hero-ad {
  min-height: 220px;
  max-height: 240px;
}

.overview-hero-ad img {
  object-position: center 48%;
}

.overview-ad-copy {
  gap: 12px;
  padding: 30px 40px;
}

.overview-ad-copy strong {
  font-size: clamp(26px, 2.4vw, 38px);
}

.overview-ad-copy small {
  max-width: 470px;
  font-size: 15px;
}

.overview-ad-button {
  min-height: 44px;
  padding: 0 22px;
}

.overview-partner {
  top: 24px;
  right: 24px;
}

.overview-module-grid {
  display: none !important;
}

.overview-section {
  margin-top: 24px;
}

.overview-rail.media-rail,
.overview-rail.movie-rail,
.overview-rail.food-rail {
  grid-auto-columns: minmax(165px, 1fr);
  gap: 14px;
  padding-bottom: 8px;
}

.media-card {
  display: block;
}

.media-wrap {
  aspect-ratio: 16 / 8.6;
  border-radius: 12px;
}

.food-card .media-wrap,
.car-card .media-wrap,
.event-card-flat .media-wrap,
.product-card .media-wrap,
.service-card .media-wrap,
.room-card .media-wrap {
  aspect-ratio: 16 / 8.4;
  background: #fff;
}

.media-wrap img {
  object-fit: cover;
  object-position: center;
}

.food-card .media-wrap img,
.product-card .media-wrap img,
.service-card .media-wrap img {
  object-fit: cover;
  object-position: center;
}

.car-card .media-wrap img {
  object-fit: cover;
  object-position: center 52%;
}

.media-card strong {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 2.5em;
  margin-top: 8px;
}

.media-card small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.overview-fuel-section .overview-rail {
  grid-auto-columns: minmax(260px, 1fr);
}

.overview-fuel-card {
  min-height: 122px;
}

@media (min-width: 1180px) {
  .overview-shell {
    width: min(1280px, calc(100% - 64px));
  }

  .overview-rail.media-rail,
  .overview-rail.movie-rail,
  .overview-rail.food-rail {
    grid-auto-columns: calc((100% - 70px) / 6);
  }

  .overview-fuel-section .overview-rail {
    grid-auto-columns: calc((100% - 42px) / 4);
  }
}

@media (max-width: 767px) {
  .overview-hero-ad {
    min-height: 178px;
    max-height: none;
  }

  .overview-ad-copy {
    width: 82%;
    padding: 18px;
  }

  .overview-ad-copy strong {
    font-size: 23px;
  }

  .overview-rail.media-rail,
  .overview-rail.movie-rail,
  .overview-rail.food-rail {
    grid-auto-columns: 172px;
    gap: 10px;
  }

  .media-wrap,
  .food-card .media-wrap,
  .car-card .media-wrap,
  .event-card-flat .media-wrap,
  .product-card .media-wrap,
  .service-card .media-wrap,
  .room-card .media-wrap {
    aspect-ratio: 16 / 9;
  }
}

/* Mobile parity with home: compact header, no right gutter, shared bottom nav. */
@media (max-width: 767px) {
  html,
  body.overview-page {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
  }

  body.overview-page {
    padding-bottom: calc(108px + env(safe-area-inset-bottom)) !important;
  }

  .overview-page .event-header {
    position: sticky;
    top: 0;
    z-index: 12000;
    width: 100%;
    max-width: 100vw;
    padding: 0;
    background: rgba(247, 244, 238, 0.99) !important;
    box-shadow: none !important;
    overflow: hidden;
  }

  .overview-page .event-header-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 126px !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    align-items: center !important;
    gap: 10px 12px !important;
    margin: 0 !important;
    padding: 12px 14px 14px !important;
    border: 0 !important;
    border-radius: 0 0 20px 20px !important;
    background: rgba(247, 244, 238, 0.99) !important;
    box-shadow: 0 6px 18px rgba(21, 30, 45, 0.05) !important;
  }

  .overview-page .event-brand {
    grid-column: 1;
    grid-row: 1;
    min-width: 0;
  }

  .overview-page .event-brand img {
    width: 34px;
    height: 34px;
  }

  .overview-page .event-brand span {
    font-size: 20px;
  }

  .overview-page .event-location {
    grid-column: 2;
    grid-row: 1;
    justify-self: start;
    min-width: 0;
    padding: 0;
    background: transparent;
    box-shadow: none;
  }

  .overview-page .event-location img {
    width: 24px;
    height: 24px;
  }

  .overview-page .event-location span:not(.event-chevron) {
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 16px;
  }

  .overview-page .event-search {
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
    min-width: 0;
    min-height: 56px;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
  }

  .overview-page .event-search input {
    min-width: 0;
    height: 56px;
    font-size: 15px;
  }

  .overview-page .event-search button {
    width: 56px;
    height: 56px;
  }

  .overview-page .event-theme,
  .overview-page .event-header-nav {
    display: none !important;
  }

  .overview-page .event-profile-chip {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    width: 46px;
    height: 46px;
    min-width: 46px;
    padding: 4px;
    border-radius: 50%;
    background: rgba(232, 255, 218, 0.98);
    box-shadow: 0 8px 18px rgba(42, 95, 30, 0.08);
  }

  .overview-page .event-profile-chip img {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    object-fit: cover;
  }

  .overview-shell {
    width: 100% !important;
    max-width: 100vw !important;
    margin: 12px 0 44px !important;
    padding: 0 14px !important;
    overflow: hidden !important;
  }

  .overview-chips {
    max-width: 100%;
    overflow-x: auto;
    padding: 4px 0 12px !important;
    scrollbar-width: none;
  }

  .overview-chips::-webkit-scrollbar {
    display: none;
  }

  .overview-hero-ad,
  .overview-section,
  .overview-rail,
  .overview-card {
    max-width: 100%;
  }

  body.dark.overview-page .event-header,
  body.dark-theme.overview-page .event-header,
  body.dark.overview-page .event-header-inner,
  body.dark-theme.overview-page .event-header-inner {
    background: rgba(31, 34, 29, 0.99) !important;
  }
}

/* ============================================================
   OVERVIEW FINAL SHELL V8 — Home/Detail header parity
   + taller desktop sponsored banner
   + centered mobile banner
   + proper mobile hamburger
   2026-08-18
   ============================================================ */

body.overview-page,
body.overview-page:not(.dark):not(.dark-theme) {
  background: #f7f4ee !important;
}

/* ----- Desktop/tablet header: same clean public shell, no green side glow ----- */
body.overview-page .event-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 12000 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  background: #f7f4ee !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

body.overview-page .event-header-inner {
  width: min(calc(100% - 32px), 1340px) !important;
  max-width: 1340px !important;
  min-height: 70px !important;
  margin: 0 auto !important;
  padding: 0 18px !important;
  border: 1px solid rgba(24, 32, 45, .075) !important;
  border-radius: 0 0 20px 20px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .055) !important;
}

body.overview-page .event-brand img {
  width: 36px !important;
  height: 36px !important;
  border-radius: 10px !important;
}

body.overview-page .event-brand span {
  font-size: 20px !important;
  font-weight: 850 !important;
}

body.overview-page .event-search {
  min-height: 46px !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.overview-page .event-search input,
body.overview-page .event-search button {
  height: 46px !important;
}

body.overview-page .event-profile-chip {
  flex: 0 0 auto;
}

/* Desktop never shows the mobile disclosure triangle/menu. */
body.overview-page .event-mobile-menu {
  display: none;
}

/* ----- Sponsored banner: more premium height on desktop ----- */
body.overview-page .overview-hero-ad {
  width: 100% !important;
  margin-inline: auto !important;
  overflow: hidden !important;
}

body.overview-page .overview-hero-ad img {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  transform: none !important;
  object-position: center center !important;
}

@media (min-width: 1024px) {
  body.overview-page .overview-hero-ad {
    height: clamp(300px, 22vw, 360px) !important;
    min-height: 300px !important;
    max-height: none !important;
    border-radius: 20px !important;
  }

  body.overview-page .overview-ad-copy {
    min-height: 100% !important;
    justify-content: center !important;
    padding: 38px 44px !important;
  }

  body.overview-page .overview-ad-copy strong {
    font-size: clamp(32px, 2.8vw, 46px) !important;
  }
}

/* ----- Phone header: Home/Detail two-row layout + real hamburger ----- */
@media (max-width: 767px) {
  body.overview-page .event-header {
    width: 100% !important;
    max-width: 100vw !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #f7f4ee !important;
  }

  body.overview-page .event-header-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 154px !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) 56px !important;
    grid-template-rows: 58px 58px !important;
    align-items: center !important;
    gap: 10px 12px !important;
    margin: 0 !important;
    padding: 10px 14px 14px !important;
    border: 0 !important;
    border-radius: 0 0 20px 20px !important;
    background: #f7f4ee !important;
    box-shadow: 0 6px 18px rgba(21, 30, 45, .045) !important;
  }

  body.overview-page .event-brand {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
  }

  body.overview-page .event-location {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    justify-self: start !important;
    padding: 0 !important;
    border-left: 1px solid rgba(24, 32, 45, .10) !important;
    padding-left: 12px !important;
  }

  body.overview-page .event-profile-chip {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
  }

  body.overview-page .event-search {
    grid-column: 1 / 3 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 56px !important;
    margin: 0 !important;
    border: 1px solid rgba(24, 32, 45, .08) !important;
    border-radius: 17px !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  body.overview-page .event-search input,
  body.overview-page .event-search button {
    height: 56px !important;
  }

  body.overview-page .event-search button {
    width: 54px !important;
  }

  body.overview-page .event-header-nav,
  body.overview-page .event-theme {
    display: none !important;
  }

  body.overview-page .event-mobile-menu {
    position: relative !important;
    grid-column: 3 !important;
    grid-row: 2 !important;
    display: block !important;
    width: 56px !important;
    height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-self: end !important;
  }

  body.overview-page .event-mobile-menu > summary {
    list-style: none !important;
    width: 56px !important;
    height: 56px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 17px !important;
    background: #edf6e5 !important;
    color: #2f9e22 !important;
    cursor: pointer !important;
    box-shadow: none !important;
  }

  body.overview-page .event-mobile-menu > summary::-webkit-details-marker {
    display: none !important;
  }

  body.overview-page .event-mobile-menu > summary::marker {
    content: "" !important;
    display: none !important;
  }

  body.overview-page .event-mobile-menu > summary span {
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    border-radius: 99px !important;
    background: currentColor !important;
  }

  body.overview-page .event-mobile-menu-panel {
    position: absolute !important;
    top: calc(100% + 8px) !important;
    right: 0 !important;
    z-index: 12150 !important;
    width: min(260px, calc(100vw - 28px)) !important;
    display: grid !important;
    gap: 6px !important;
    padding: 10px !important;
    border: 1px solid rgba(24, 32, 45, .08) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .14) !important;
  }

  body.overview-page .event-mobile-menu:not([open]) .event-mobile-menu-panel {
    display: none !important;
  }

  body.overview-page .event-mobile-menu-panel a {
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 12px !important;
    border-radius: 12px !important;
    color: #182235 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  body.overview-page .event-mobile-menu-panel a:hover {
    background: #eef9e8 !important;
    color: #2f9e22 !important;
  }

  /* Banner is geometrically centered; no right drift/overscan. */
  body.overview-page .overview-shell {
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px auto 44px !important;
    padding-inline: 14px !important;
    overflow: hidden !important;
  }

  body.overview-page .overview-hero-ad {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 210px !important;
    height: 210px !important;
    margin: 0 auto !important;
    transform: none !important;
    border-radius: 18px !important;
  }

  body.overview-page .overview-hero-ad img {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    transform: none !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  body.overview-page .overview-ad-copy {
    width: min(78%, 310px) !important;
    min-height: 100% !important;
    justify-content: center !important;
    padding: 18px !important;
  }
}

/* ----- Bottom nav: active Overview must use its FILLED PNG ----- */
@media (max-width: 767px) {
  body.overview-page .events-mobile-nav .overview-nav-icon {
    position: relative !important;
    width: 25px !important;
    height: 25px !important;
    display: grid !important;
    place-items: center !important;
  }

  body.overview-page .events-mobile-nav .overview-nav-icon img {
    position: absolute !important;
    inset: 0 !important;
    width: 24px !important;
    height: 24px !important;
    object-fit: contain !important;
  }

  body.overview-page .events-mobile-nav .overview-nav-icon .nav-icon-default {
    display: block !important;
    opacity: 1 !important;
  }

  body.overview-page .events-mobile-nav .overview-nav-icon .nav-icon-active {
    display: none !important;
    opacity: 0 !important;
  }

  body.overview-page .events-mobile-nav a.active .overview-nav-icon .nav-icon-default {
    display: none !important;
    opacity: 0 !important;
  }

  body.overview-page .events-mobile-nav a.active .overview-nav-icon .nav-icon-active {
    display: block !important;
    opacity: 1 !important;
    filter: none !important;
  }
}

body.dark.overview-page,
body.dark-theme.overview-page {
  background: #151715 !important;
}

body.dark.overview-page .event-header,
body.dark-theme.overview-page .event-header {
  background: #151715 !important;
}

body.dark.overview-page .event-header-inner,
body.dark-theme.overview-page .event-header-inner {
  background: #1f221d !important;
  border-color: rgba(255,255,255,.08) !important;
}

/* ============================================================
   OVERVIEW HOME-SHELL + CONTENT POLISH V9
   2026-08-18
   Final authority. The Overview header and content are one shell,
   just like Home. Also improves food/car imagery and sponsor hero.
   ============================================================ */

body.overview-page {
  --overview-shell-width: 1340px;
  --overview-header-height: 70px;
  --overview-page-bg: #f7f4ee;
  --overview-shell-bg: rgba(255,255,255,.96);
  background: var(--overview-page-bg) !important;
}

/* One connected shell: fixed header overlays the same-width content surface. */
body.overview-page .event-header {
  position: fixed !important;
  inset: 0 0 auto 0 !important;
  z-index: 12000 !important;
  width: 100% !important;
  height: var(--overview-header-height) !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: var(--overview-page-bg) !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

body.overview-page .event-header-inner {
  width: min(calc(100% - 32px), var(--overview-shell-width)) !important;
  max-width: var(--overview-shell-width) !important;
  height: var(--overview-header-height) !important;
  min-height: var(--overview-header-height) !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  border: 1px solid rgba(24,32,45,.07) !important;
  border-bottom-color: transparent !important;
  border-radius: 28px 28px 0 0 !important;
  background: var(--overview-shell-bg) !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

body.overview-page .overview-shell {
  width: min(calc(100% - 32px), var(--overview-shell-width)) !important;
  max-width: var(--overview-shell-width) !important;
  min-height: 100vh !important;
  margin: 0 auto 48px !important;
  padding: calc(var(--overview-header-height) + 22px) 24px 44px !important;
  border-radius: 28px 28px 34px 34px !important;
  background: var(--overview-shell-bg) !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

/* Content starts cleanly inside the connected shell. */
body.overview-page .overview-chips {
  margin: 0 !important;
  padding: 0 0 16px !important;
}

/* ------------------------------------------------------------
   Sponsored hero — same image, new composition.
   Less "full-screen car photo", more premium editorial banner.
   ------------------------------------------------------------ */
body.overview-page .overview-hero-ad {
  isolation: isolate !important;
  height: clamp(310px, 24vw, 370px) !important;
  min-height: 310px !important;
  max-height: 370px !important;
  border: 1px solid rgba(10,52,31,.12) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 18% 18%, rgba(112,214,82,.18), transparent 28%),
    linear-gradient(115deg, #082b1b 0%, #103c28 42%, #dfe9e2 100%) !important;
  box-shadow: 0 22px 58px rgba(8,38,24,.14) !important;
}

body.overview-page .overview-hero-ad::before {
  content: "" !important;
  position: absolute !important;
  z-index: 0 !important;
  width: 280px !important;
  height: 280px !important;
  left: -84px !important;
  bottom: -120px !important;
  border-radius: 50% !important;
  background: rgba(100,205,66,.12) !important;
  pointer-events: none !important;
}

body.overview-page .overview-hero-ad::after {
  content: "" !important;
  position: absolute !important;
  z-index: 0 !important;
  width: 150px !important;
  height: 150px !important;
  left: 34% !important;
  top: -70px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.07) !important;
  pointer-events: none !important;
}

body.overview-page .overview-hero-ad > img {
  position: absolute !important;
  z-index: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  width: 64% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center 52% !important;
  transform: scale(1.015) !important;
  transform-origin: center !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.42) 13%, #000 34%) !important;
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.42) 13%, #000 34%) !important;
}

body.overview-page .overview-hero-shade {
  z-index: 1 !important;
  background:
    linear-gradient(90deg,
      rgba(4,31,18,.97) 0%,
      rgba(7,44,26,.93) 31%,
      rgba(8,48,28,.62) 49%,
      rgba(8,48,28,.10) 72%,
      transparent 100%) !important;
}

body.overview-page .overview-ad-copy {
  position: relative !important;
  z-index: 3 !important;
  width: min(500px, 46%) !important;
  min-height: 100% !important;
  display: flex !important;
  justify-content: center !important;
  gap: 13px !important;
  padding: 40px 44px !important;
}

body.overview-page .overview-ad-badge {
  min-height: 30px !important;
  padding: 0 12px !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  background: rgba(255,255,255,.12) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
}

body.overview-page .overview-ad-copy strong {
  max-width: 430px !important;
  font-size: clamp(38px, 3.4vw, 54px) !important;
  line-height: .98 !important;
  letter-spacing: -.025em !important;
  text-wrap: balance !important;
}

body.overview-page .overview-ad-copy small {
  max-width: 430px !important;
  color: rgba(255,255,255,.82) !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

body.overview-page .overview-ad-button {
  min-height: 46px !important;
  padding: 0 22px !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: #12321f !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.13) !important;
}

body.overview-page .overview-partner {
  z-index: 4 !important;
  top: 22px !important;
  right: 22px !important;
  padding: 10px 14px !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  background: rgba(16,145,73,.88) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
}

/* ------------------------------------------------------------
   Food/menu cards — do not over-zoom source photos.
   ------------------------------------------------------------ */
body.overview-page .food-card .media-wrap {
  background:
    radial-gradient(circle at 50% 48%, rgba(255,255,255,1) 0 48%, rgba(247,249,246,.96) 100%) !important;
}

body.overview-page .food-card .media-wrap img {
  object-fit: contain !important;
  object-position: center center !important;
  padding: 8px !important;
  transform: scale(.94) !important;
  transform-origin: center !important;
}

/* Rental-car rail on the Overview home: show the vehicle, not a crop of it. */
body.overview-page .car-card .media-wrap {
  background: linear-gradient(180deg, #f7f9f8, #eef2ef) !important;
}

body.overview-page .car-card .media-wrap img {
  object-fit: contain !important;
  object-position: center center !important;
  padding: 5px 7px !important;
  transform: scale(.96) !important;
  transform-origin: center !important;
}

/* Cards get a cleaner, slightly denser rhythm. */
body.overview-page .media-card {
  border-color: rgba(15,23,42,.075) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 28px rgba(15,23,42,.055) !important;
}

body.overview-page .media-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 17px 34px rgba(15,23,42,.08) !important;
}

/* Tablet still uses the same connected shell. */
@media (min-width: 768px) and (max-width: 1023px) {
  body.overview-page .event-header-inner,
  body.overview-page .overview-shell {
    width: min(calc(100% - 24px), var(--overview-shell-width)) !important;
  }

  body.overview-page .overview-hero-ad {
    height: 290px !important;
    min-height: 290px !important;
  }

  body.overview-page .overview-ad-copy {
    width: 54% !important;
    padding: 32px !important;
  }

  body.overview-page .overview-hero-ad > img {
    width: 68% !important;
  }
}

/* ------------------------------------------------------------
   Mobile: same connected shell idea as Home.
   Header remains two rows; content begins under it.
   ------------------------------------------------------------ */
@media (max-width: 767px) {
  body.overview-page {
    --overview-header-height: 154px;
    width: 100% !important;
    max-width: 100% !important;
    padding-bottom: calc(102px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-x: hidden !important;
  }

  body.overview-page .event-header {
    height: var(--overview-header-height) !important;
  }

  body.overview-page .event-header-inner {
    width: 100% !important;
    max-width: 100% !important;
    height: var(--overview-header-height) !important;
    min-height: var(--overview-header-height) !important;
    border-radius: 0 0 20px 20px !important;
    background: var(--overview-page-bg) !important;
  }

  body.overview-page .overview-shell {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding: calc(var(--overview-header-height) + 14px) 14px calc(116px + env(safe-area-inset-bottom, 0px)) !important;
    border-radius: 0 !important;
    background: #fff !important;
    overflow-x: hidden !important;
  }

  body.overview-page .overview-chips {
    margin-inline: -14px !important;
    padding: 0 14px 14px !important;
  }

  /* New mobile banner: centered and less dominated by the source photo. */
  body.overview-page .overview-hero-ad {
    width: 100% !important;
    height: 236px !important;
    min-height: 236px !important;
    max-height: 236px !important;
    margin: 0 auto !important;
    border-radius: 20px !important;
  }

  body.overview-page .overview-hero-ad > img {
    top: 0 !important;
    right: -5% !important;
    width: 82% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 57% center !important;
    transform: none !important;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.40) 16%, #000 40%) !important;
    mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.40) 16%, #000 40%) !important;
  }

  body.overview-page .overview-hero-shade {
    background:
      linear-gradient(90deg,
        rgba(4,31,18,.98) 0%,
        rgba(7,44,26,.93) 42%,
        rgba(7,44,26,.56) 65%,
        rgba(7,44,26,.16) 88%,
        transparent 100%) !important;
  }

  body.overview-page .overview-ad-copy {
    width: 67% !important;
    max-width: 300px !important;
    min-height: 100% !important;
    gap: 10px !important;
    padding: 18px !important;
  }

  body.overview-page .overview-ad-copy strong {
    font-size: clamp(25px, 7vw, 34px) !important;
    line-height: 1 !important;
  }

  body.overview-page .overview-ad-copy small {
    display: none !important;
  }

  body.overview-page .overview-ad-button {
    min-height: 42px !important;
    padding: 0 18px !important;
    font-size: 13px !important;
  }

  body.overview-page .overview-partner {
    display: none !important;
  }

  /* Mobile content rails: consistent, no giant/awkward crops. */
  body.overview-page .overview-rail.media-rail,
  body.overview-page .overview-rail.movie-rail,
  body.overview-page .overview-rail.food-rail {
    grid-auto-columns: minmax(174px, 46vw) !important;
    gap: 10px !important;
    margin-inline: -14px !important;
    padding-inline: 14px !important;
  }

  body.overview-page .food-card .media-wrap,
  body.overview-page .car-card .media-wrap {
    aspect-ratio: 16 / 10 !important;
  }

  body.overview-page .food-card .media-wrap img {
    padding: 7px !important;
    transform: scale(.92) !important;
  }

  body.overview-page .car-card .media-wrap img {
    padding: 7px !important;
    transform: scale(.94) !important;
  }
}

@media (max-width: 390px) {
  body.overview-page .overview-hero-ad {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }

  body.overview-page .overview-ad-copy {
    width: 72% !important;
    padding: 16px !important;
  }
}

/* Dark connected shell. */
body.dark.overview-page,
body.dark-theme.overview-page {
  --overview-page-bg: #151715;
  --overview-shell-bg: rgba(31,34,29,.97);
}

body.dark.overview-page .overview-shell,
body.dark-theme.overview-page .overview-shell,
body.dark.overview-page .event-header-inner,
body.dark-theme.overview-page .event-header-inner {
  background: var(--overview-shell-bg) !important;
}

/* ============================================================
   OVERVIEW V10 — STABILITY FIX
   2026-08-18
   Only 3 fixes:
   1) active Overview icon is green, never black;
   2) banner image is centered, never pushed right;
   3) rental-car rail cards are large/full-bleed and borderless.
   IMPORTANT: overview.css must load AFTER global_controls.css.
   ============================================================ */

/* 1. Active Overview icon: filled PNG stays filled, but brand green. */
@media (max-width: 767px) {
  body.overview-page .events-mobile-nav a.active .overview-nav-icon .nav-icon-active {
    display: block !important;
    opacity: 1 !important;
    filter:
      brightness(0)
      saturate(100%)
      invert(48%)
      sepia(82%)
      saturate(1040%)
      hue-rotate(70deg)
      brightness(91%)
      contrast(92%) !important;
  }

  body.overview-page .events-mobile-nav a.active .overview-nav-icon .nav-icon-default {
    display: none !important;
    opacity: 0 !important;
  }

  body.overview-page .events-mobile-nav a.active {
    background: #d9f8c8 !important;
    color: #169c35 !important;
  }
}

/* 2. Banner: use the source image as a centered full canvas.
      Text remains on the left via the shade, but the CAR is no longer
      physically positioned outside/right of the banner. */
body.overview-page .overview-hero-ad > img {
  inset: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

body.overview-page .overview-hero-shade {
  background:
    linear-gradient(
      90deg,
      rgba(3, 31, 17, .97) 0%,
      rgba(4, 36, 20, .92) 30%,
      rgba(5, 40, 23, .70) 48%,
      rgba(5, 40, 23, .22) 72%,
      rgba(5, 40, 23, .04) 100%
    ) !important;
}

@media (max-width: 767px) {
  body.overview-page .overview-hero-ad {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    transform: none !important;
  }

  body.overview-page .overview-hero-ad > img {
    inset: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-position: center center !important;
    transform: none !important;
  }

  body.overview-page .overview-hero-shade {
    background:
      linear-gradient(
        90deg,
        rgba(3,31,17,.98) 0%,
        rgba(4,36,20,.92) 38%,
        rgba(5,40,23,.58) 62%,
        rgba(5,40,23,.12) 100%
      ) !important;
  }
}

/* 3. Rental cars on main Overview:
      restore the larger, clean, full-bleed look without a card frame. */
body.overview-page #overviewCars .overview-rail {
  align-items: start !important;
}

body.overview-page #overviewCars .car-card {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.overview-page #overviewCars .car-card:hover {
  transform: none !important;
  box-shadow: none !important;
}

body.overview-page #overviewCars .car-card .media-wrap {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #f1f4f2 !important;
  box-shadow: none !important;
}

body.overview-page #overviewCars .car-card .media-wrap img {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
}

body.overview-page #overviewCars .car-card > strong,
body.overview-page #overviewCars .car-card > small {
  padding-inline: 2px !important;
}

body.overview-page #overviewCars .car-card > strong {
  min-height: 0 !important;
  margin-top: 10px !important;
  font-size: 16px !important;
}

body.overview-page #overviewCars .car-card > small {
  margin-top: 5px !important;
  margin-bottom: 0 !important;
}

/* Mobile cars are intentionally larger than cinema/food cards. */
@media (max-width: 767px) {
  body.overview-page #overviewCars .overview-rail {
    grid-auto-columns: min(290px, 78vw) !important;
    gap: 14px !important;
    margin-inline: -14px !important;
    padding-inline: 14px !important;
  }

  body.overview-page #overviewCars .car-card .media-wrap {
    aspect-ratio: 16 / 9.2 !important;
    border-radius: 18px !important;
  }

  body.overview-page #overviewCars .car-card > strong {
    font-size: 16px !important;
  }
}

@media (max-width: 390px) {
  body.overview-page #overviewCars .overview-rail {
    grid-auto-columns: min(278px, 82vw) !important;
  }
}

/* ============================================================
   OVERVIEW PROMO + NAV FINAL V12 — 2026-08-19
   Desktop: editorial split banner (content left / sharp image right).
   Mobile: image on top, content below. No horizontal squeeze.
   ============================================================ */

body.overview-page .overview-chips a {
  flex: 0 0 auto !important;
  min-height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(15, 23, 42, .09) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #162033 !important;
  box-shadow: 0 7px 20px rgba(15, 23, 42, .045) !important;
  transition: transform .16s ease, border-color .16s ease, background .16s ease, color .16s ease !important;
}

body.overview-page .overview-chips a:is(:hover, :focus-visible) {
  transform: translateY(-1px) !important;
  border-color: rgba(13, 123, 67, .28) !important;
  background: #f5fbf3 !important;
  color: #0d7b43 !important;
}

body.overview-page .overview-chips a.active,
body.overview-page .overview-chips a[aria-current="page"] {
  border-color: #0d7b43 !important;
  background: linear-gradient(135deg, #15934f, #08743e) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(13, 123, 67, .18) !important;
}

body.overview-page .overview-chips a > span {
  color: inherit !important;
  font-weight: 800 !important;
}

body.overview-page .overview-chips svg {
  width: 19px !important;
  height: 19px !important;
  flex: 0 0 19px !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.9 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* Split sponsor banner — no stretched full-width photo. */
body.overview-page .overview-hero-ad {
  position: relative !important;
  isolation: isolate !important;
  width: 100% !important;
  height: 330px !important;
  min-height: 330px !important;
  max-height: 330px !important;
  display: grid !important;
  grid-template-columns: minmax(390px, 42%) minmax(0, 58%) !important;
  grid-template-rows: 1fr !important;
  margin: 0 auto !important;
  border: 1px solid rgba(17, 71, 42, .11) !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: 0 20px 52px rgba(15, 51, 31, .11) !important;
  overflow: hidden !important;
}

body.overview-page .overview-hero-ad::before,
body.overview-page .overview-hero-ad::after {
  display: none !important;
  content: none !important;
}

body.overview-page .overview-hero-ad > img {
  position: relative !important;
  inset: auto !important;
  z-index: 0 !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  display: block !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

body.overview-page .overview-hero-shade {
  display: none !important;
}

body.overview-page .overview-ad-copy {
  position: relative !important;
  z-index: 2 !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 30px 34px !important;
  color: #143725 !important;
  background:
    radial-gradient(circle at 2% 100%, rgba(56, 178, 87, .09), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #fbfefb 70%, #f1faf0 100%) !important;
}

body.overview-page .overview-ad-copy::after {
  content: "" !important;
  position: absolute !important;
  z-index: 2 !important;
  top: 0 !important;
  right: -54px !important;
  width: 108px !important;
  height: 100% !important;
  background: linear-gradient(90deg, #f4faf3 0%, rgba(244,250,243,.72) 45%, transparent 100%) !important;
  pointer-events: none !important;
}

body.overview-page .overview-ad-badge {
  min-height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 13px !important;
  border: 1px solid rgba(13, 123, 67, .30) !important;
  border-radius: 999px !important;
  color: #0d7b43 !important;
  background: rgba(245, 253, 243, .96) !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

body.overview-page .overview-ad-copy strong {
  max-width: 470px !important;
  color: #0d4f31 !important;
  font-size: clamp(36px, 3vw, 50px) !important;
  line-height: 1 !important;
  letter-spacing: -.032em !important;
  text-shadow: none !important;
}

body.overview-page .overview-ad-copy > small {
  max-width: 460px !important;
  display: block !important;
  color: #425466 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

body.overview-page .overview-ad-benefits {
  width: 100% !important;
  max-width: 490px !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 9px !important;
  margin-top: 2px !important;
}

body.overview-page .overview-ad-benefits > span {
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 8px !important;
  color: #274737 !important;
}

body.overview-page .overview-ad-benefits svg {
  width: 34px !important;
  height: 34px !important;
  padding: 8px !important;
  border-radius: 50% !important;
  fill: none !important;
  stroke: #15934f !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  background: #eef9ed !important;
}

body.overview-page .overview-ad-benefits b {
  color: #385547 !important;
  font-size: 10.5px !important;
  line-height: 1.2 !important;
  font-weight: 760 !important;
}

body.overview-page .overview-ad-button {
  min-height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-top: 2px !important;
  padding: 0 22px !important;
  border-radius: 13px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #15934f, #08743e) !important;
  box-shadow: 0 10px 24px rgba(13, 123, 67, .20) !important;
  font-size: 14px !important;
  font-weight: 850 !important;
}

body.overview-page .overview-partner {
  position: absolute !important;
  z-index: 5 !important;
  top: 22px !important;
  right: 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 10px 14px !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: rgba(11, 145, 75, .92) !important;
  box-shadow: 0 10px 28px rgba(6, 83, 44, .18) !important;
  line-height: 1.12 !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
}

@media (min-width: 768px) and (max-width: 1080px) {
  body.overview-page .overview-hero-ad {
    height: 304px !important;
    min-height: 304px !important;
    max-height: 304px !important;
    grid-template-columns: minmax(330px, 48%) minmax(0, 52%) !important;
  }

  body.overview-page .overview-ad-copy {
    padding: 26px !important;
  }

  body.overview-page .overview-ad-copy strong {
    font-size: clamp(32px, 4.4vw, 42px) !important;
  }

  body.overview-page .overview-ad-benefits b {
    font-size: 9.5px !important;
  }
}

@media (max-width: 767px) {
  body.overview-page .overview-chips {
    gap: 8px !important;
  }

  body.overview-page .overview-chips a {
    min-height: 44px !important;
    padding: 0 15px !important;
    border-radius: 13px !important;
    font-size: 14px !important;
  }

  body.overview-page .overview-chips svg {
    width: 18px !important;
    height: 18px !important;
    flex-basis: 18px !important;
  }

  /* Phone: image is a real top block; information is a separate bottom block. */
  body.overview-page .overview-hero-ad {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(15, 51, 31, .10) !important;
  }

  body.overview-page .overview-hero-ad > img {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 21px 21px 0 0 !important;
    transform: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  body.overview-page .overview-ad-copy {
    position: relative !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    gap: 11px !important;
    padding: 18px !important;
    border-radius: 0 0 21px 21px !important;
    color: #143725 !important;
    background: #fff !important;
  }

  body.overview-page .overview-ad-copy::after {
    display: none !important;
  }

  body.overview-page .overview-ad-copy strong {
    max-width: 100% !important;
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1.02 !important;
  }

  body.overview-page .overview-ad-copy > small {
    max-width: 100% !important;
    display: block !important;
    font-size: 13.5px !important;
    line-height: 1.42 !important;
  }

  body.overview-page .overview-ad-benefits {
    max-width: none !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    margin-top: 1px !important;
  }

  body.overview-page .overview-ad-benefits > span {
    grid-template-columns: 30px minmax(0, 1fr) !important;
    gap: 6px !important;
  }

  body.overview-page .overview-ad-benefits svg {
    width: 30px !important;
    height: 30px !important;
    padding: 7px !important;
  }

  body.overview-page .overview-ad-benefits b {
    font-size: 9px !important;
  }

  body.overview-page .overview-ad-button {
    width: 100% !important;
    min-height: 48px !important;
    margin-top: 3px !important;
  }

  body.overview-page .overview-partner {
    top: 12px !important;
    right: 12px !important;
    display: inline-flex !important;
    padding: 8px 11px !important;
    border-radius: 12px !important;
    font-size: 11px !important;
  }
}

@media (max-width: 380px) {
  body.overview-page .overview-ad-benefits {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }

  body.overview-page .overview-ad-benefits > span {
    grid-template-columns: 30px minmax(0, 1fr) !important;
  }

  body.overview-page .overview-ad-benefits b br {
    display: none !important;
  }
}

/* Local fallback anchors (only modules without a dedicated page) stop below fixed header. */
body.overview-page .overview-section {
  scroll-margin-top: 92px !important;
}

@media (max-width: 767px) {
  body.overview-page .overview-section {
    scroll-margin-top: 172px !important;
  }
}

/* ============================================================
   OVERVIEW BANNER V13 — FINAL GEOMETRY FIX
   2026-08-19
   1) remove browser default body margin (mobile drift);
   2) desktop promo uses absolute two-column geometry;
   3) copy is vertically balanced and can never clip the CTA;
   4) mobile card is mathematically centered in the viewport.
   ============================================================ */

html {
  width: 100%;
  max-width: 100%;
}

body.overview-page {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Keep the connected Overview shell centered independently of body defaults. */
body.overview-page .overview-shell,
body.overview-page .event-header-inner {
  box-sizing: border-box !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ---------- Desktop promo: fixed, predictable geometry ---------- */
@media (min-width: 1081px) {
  body.overview-page .overview-hero-ad {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 340px !important;
    min-height: 340px !important;
    max-height: 340px !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    border-radius: 24px !important;
  }

  body.overview-page .overview-hero-ad > img {
    position: absolute !important;
    z-index: 0 !important;
    inset: 0 0 0 auto !important;
    width: 58% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center 50% !important;
    transform: none !important;
  }

  body.overview-page .overview-ad-copy {
    position: absolute !important;
    z-index: 3 !important;
    inset: 0 auto 0 0 !important;
    width: 42% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: none !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 28px 34px !important;
    overflow: visible !important;
  }

  body.overview-page .overview-ad-copy strong {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: clamp(36px, 2.7vw, 47px) !important;
    line-height: 1.02 !important;
  }

  body.overview-page .overview-ad-copy > small {
    width: 100% !important;
    max-width: 430px !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.38 !important;
  }

  body.overview-page .overview-ad-benefits {
    width: 100% !important;
    max-width: 455px !important;
    gap: 8px !important;
    margin: 2px 0 0 !important;
  }

  body.overview-page .overview-ad-benefits > span {
    grid-template-columns: 32px minmax(0, 1fr) !important;
    gap: 7px !important;
  }

  body.overview-page .overview-ad-benefits svg {
    width: 32px !important;
    height: 32px !important;
    padding: 7px !important;
  }

  body.overview-page .overview-ad-benefits b {
    font-size: 10px !important;
    line-height: 1.16 !important;
  }

  body.overview-page .overview-ad-button {
    flex: 0 0 auto !important;
    min-height: 44px !important;
    margin: 4px 0 0 !important;
  }

  body.overview-page .overview-ad-copy::after {
    top: 0 !important;
    bottom: 0 !important;
    height: auto !important;
  }

  body.overview-page .overview-partner {
    top: 20px !important;
    right: 20px !important;
  }
}

/* ---------- Tablet: same principle, slightly tighter ---------- */
@media (min-width: 768px) and (max-width: 1080px) {
  body.overview-page .overview-hero-ad {
    position: relative !important;
    height: 310px !important;
    min-height: 310px !important;
    max-height: 310px !important;
    overflow: hidden !important;
  }

  body.overview-page .overview-ad-copy {
    gap: 9px !important;
    padding: 22px 24px !important;
  }

  body.overview-page .overview-ad-benefits {
    gap: 6px !important;
  }

  body.overview-page .overview-ad-button {
    margin-top: 2px !important;
  }
}

/* ---------- Phone: true centered card; image top, content bottom ---------- */
@media (max-width: 767px) {
  html,
  body.overview-page {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  body.overview-page .overview-shell {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  body.overview-page .overview-hero-ad {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 570px !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    transform: none !important;
    overflow: hidden !important;
  }

  body.overview-page .overview-hero-ad > img {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    object-position: center center !important;
  }

  body.overview-page .overview-ad-copy {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  body.overview-page .overview-ad-copy strong,
  body.overview-page .overview-ad-copy > small,
  body.overview-page .overview-ad-benefits,
  body.overview-page .overview-ad-button {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Very small phones: keep symmetric side gutters, never hug one edge. */
@media (max-width: 390px) {
  body.overview-page .overview-shell {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.overview-page .overview-hero-ad {
    width: 100% !important;
    margin-inline: auto !important;
  }
}


/* ============================================================
   OVERVIEW FOOD MEDIA V10 — SAME 800x600 CROP AS BUSINESS EDITOR
   ============================================================ */
.overview-page .food-card .media-wrap {
  aspect-ratio: 4 / 3 !important;
  background: #f7f9f5 !important;
}

.overview-page .food-card .media-wrap img {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
}


/* ============================================================
   MAKON PUBLIC MEDIA V18.1 — OVERVIEW
   Display the exact frame prepared by the business editor.
   ============================================================ */
body.overview-page #overviewFood .media-wrap,
body.overview-page #overviewProducts .media-wrap,
body.overview-page #overviewPharmacy .media-wrap,
body.overview-page #overviewServices .media-wrap,
body.overview-page #overviewProcedures .media-wrap,
body.overview-page #overviewActivities .media-wrap {
  aspect-ratio: 4 / 3 !important;
}

body.overview-page #overviewCars .media-wrap,
body.overview-page #overviewRooms .media-wrap,
body.overview-page #overviewOffices .media-wrap {
  aspect-ratio: 16 / 9 !important;
}

body.overview-page #overviewFood .media-wrap img,
body.overview-page #overviewProducts .media-wrap img,
body.overview-page #overviewPharmacy .media-wrap img,
body.overview-page #overviewServices .media-wrap img,
body.overview-page #overviewProcedures .media-wrap img,
body.overview-page #overviewActivities .media-wrap img,
body.overview-page #overviewCars .media-wrap img,
body.overview-page #overviewRooms .media-wrap img,
body.overview-page #overviewOffices .media-wrap img {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
  background: #f5f7f5 !important;
}

/* Keep Event/Afisha covers full bleed; their editor already exports 16:9. */
body.overview-page #overviewEvents .media-wrap {
  aspect-ratio: 16 / 9 !important;
}
body.overview-page #overviewEvents .media-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

@media (max-width: 720px) {
  body.overview-page #overviewFood .media-wrap,
  body.overview-page #overviewProducts .media-wrap,
  body.overview-page #overviewPharmacy .media-wrap,
  body.overview-page #overviewServices .media-wrap,
  body.overview-page #overviewProcedures .media-wrap,
  body.overview-page #overviewActivities .media-wrap,
  body.overview-page #overviewCars .media-wrap,
  body.overview-page #overviewRooms .media-wrap,
  body.overview-page #overviewOffices .media-wrap,
  body.overview-page #overviewEvents .media-wrap {
    width: 100% !important;
    min-height: 0 !important;
  }
}

/* ============================================================
   OVERVIEW V21.1 — DENSER REAL CONTENT RAILS
   Extra cards are hydrated from each real section page; no fake products.
   ============================================================ */
body.overview-page .overview-section-head {
  display: flex;
  align-items: center;
  gap: 12px;
}

body.overview-page .overview-section-head > a {
  margin-left: auto;
}

body.overview-page .overview-section-count {
  flex: 0 0 auto;
  padding: 5px 9px;
  border: 1px solid rgba(22, 156, 70, .13);
  border-radius: 999px;
  background: rgba(22, 156, 70, .055);
  color: #15803d;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

body.overview-page .overview-card.is-overview-hydrated {
  animation: makonOverviewCardIn .22s ease both;
}

@keyframes makonOverviewCardIn {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (min-width: 900px) {
  body.overview-page .overview-rail.media-rail,
  body.overview-page .overview-rail.movie-rail,
  body.overview-page .overview-rail.food-rail {
    grid-auto-columns: minmax(205px, 235px) !important;
    gap: 14px !important;
  }

  body.overview-page #overviewCars .overview-rail {
    grid-auto-columns: minmax(220px, 250px) !important;
  }
}

@media (max-width: 600px) {
  body.overview-page .overview-section-head {
    gap: 8px;
  }

  body.overview-page .overview-section-count {
    display: none;
  }
}

body.dark.overview-page .overview-section-count,
body.dark-theme.overview-page .overview-section-count {
  border-color: rgba(153, 228, 62, .16);
  background: rgba(153, 228, 62, .08);
  color: #a7ec68;
}


/* ============================================================
   MAKON V33 — COMPANY IDENTITY INSIDE OVERVIEW AD
   ============================================================ */
body.overview-page .overview-ad-company {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  width: min(100%, 430px) !important;
  min-width: 0 !important;
  margin: 0 0 1px !important;
}

body.overview-page .overview-ad-company > img {
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  margin: 0 !important;
  padding: 3px !important;
  object-fit: cover !important;
  border: 1px solid rgba(20, 128, 61, .14) !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 7px 18px rgba(20, 74, 39, .08) !important;
}

body.overview-page .overview-ad-company > span {
  display: grid !important;
  min-width: 0 !important;
  gap: 2px !important;
}

body.overview-page .overview-ad-company b {
  min-width: 0 !important;
  overflow: hidden !important;
  color: #173c24 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.overview-page .overview-ad-company small {
  color: #66766c !important;
  font-size: 10.5px !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
}

body.dark.overview-page .overview-ad-company b,
body.dark-theme.overview-page .overview-ad-company b {
  color: #eff8ef !important;
}

body.dark.overview-page .overview-ad-company small,
body.dark-theme.overview-page .overview-ad-company small {
  color: #aebaae !important;
}

@media (max-width: 767px) {
  body.overview-page .overview-ad-company {
    width: 100% !important;
  }
  body.overview-page .overview-ad-company > img {
    width: 38px !important;
    height: 38px !important;
    flex-basis: 38px !important;
  }
}


/* ============================================================
   MAKON V34 — PREMIUM OVERVIEW AD
   Approved visual direction:
   - large round company logo + company/city identity
   - warm editorial left panel + campaign media on right
   - compact trust chips
   - real listing photo preview near CTA
   - premium MAKON partner ribbon
   - responsive tablet/mobile composition
   ============================================================ */

body.overview-page .overview-hero-ad.overview-hero-ad-v34 {
  --ad-green: #0b8f43;
  --ad-green-deep: #07572e;
  --ad-ink: #10251a;
  --ad-muted: #66766c;
  position: relative !important;
  isolation: isolate !important;
  display: block !important;
  width: 100% !important;
  height: clamp(360px, 28vw, 430px) !important;
  min-height: 360px !important;
  max-height: 430px !important;
  overflow: hidden !important;
  border: 1px solid rgba(18, 78, 42, .12) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 23% 20%, rgba(229, 255, 201, .82), transparent 33%),
    linear-gradient(112deg, #fbfff5 0%, #f6f7e9 42%, #e5eadc 100%) !important;
  box-shadow:
    0 26px 64px rgba(28, 69, 44, .12),
    0 3px 10px rgba(20, 50, 31, .05) !important;
  color: var(--ad-ink) !important;
  text-decoration: none !important;
}

body.overview-page .overview-hero-ad-v34::before {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 31% 54%, rgba(126, 219, 78, .13), transparent 28%),
    linear-gradient(90deg,
      rgba(250, 255, 244, 1) 0%,
      rgba(250, 255, 244, .97) 35%,
      rgba(250, 255, 244, .72) 47%,
      rgba(250, 255, 244, .08) 64%,
      transparent 79%) !important;
}

body.overview-page .overview-hero-ad-v34::after {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: .42 !important;
  background-image:
    radial-gradient(circle at 17% 70%, rgba(59, 171, 74, .16) 0 1px, transparent 1.5px),
    radial-gradient(circle at 44% 18%, rgba(255, 201, 78, .20) 0 1px, transparent 1.7px) !important;
  background-size: 27px 27px, 39px 39px !important;
  mask-image: linear-gradient(90deg, #000, transparent 57%) !important;
  -webkit-mask-image: linear-gradient(90deg, #000, transparent 57%) !important;
}

body.overview-page .overview-hero-ad-v34 > .overview-ad-media {
  position: absolute !important;
  z-index: 0 !important;
  inset: 0 0 0 auto !important;
  display: block !important;
  width: 62% !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.overview-page .overview-hero-ad-v34 > .overview-ad-media > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
}

body.overview-page .overview-hero-ad-v34 > .overview-hero-shade {
  position: absolute !important;
  z-index: 1 !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg,
      rgba(248, 255, 241, .98) 0%,
      rgba(248, 255, 241, .94) 35%,
      rgba(248, 255, 241, .56) 50%,
      rgba(248, 255, 241, .05) 68%,
      transparent 82%) !important;
}

body.overview-page .overview-hero-ad-v34 > .overview-ad-copy {
  position: absolute !important;
  z-index: 3 !important;
  inset: 0 auto 0 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  width: 50% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
  gap: 10px !important;
  padding: 24px 34px 23px 38px !important;
  color: var(--ad-ink) !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-height: 28px !important;
  padding: 0 11px !important;
  border: 1px solid rgba(19, 141, 65, .18) !important;
  border-radius: 999px !important;
  background: rgba(238, 252, 227, .91) !important;
  color: #147b3b !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  box-shadow: 0 5px 16px rgba(31, 113, 53, .05) !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-company {
  display: flex !important;
  align-items: center !important;
  gap: 13px !important;
  width: min(100%, 470px) !important;
  min-width: 0 !important;
  margin: 2px 0 3px !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-company-logo {
  display: grid !important;
  place-items: center !important;
  width: 70px !important;
  height: 70px !important;
  flex: 0 0 70px !important;
  padding: 5px !important;
  border: 2px solid rgba(255, 255, 255, .92) !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow:
    0 12px 26px rgba(25, 70, 40, .14),
    inset 0 0 0 1px rgba(20, 110, 54, .07) !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-company-logo > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  transform: none !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-company-text {
  display: grid !important;
  min-width: 0 !important;
  gap: 5px !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-company-text > b {
  overflow: hidden !important;
  color: #12281b !important;
  font-size: clamp(19px, 1.55vw, 25px) !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-company-text > small {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  margin: 0 !important;
  color: #637269 !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  line-height: 1.1 !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-company-text svg {
  width: 14px !important;
  height: 14px !important;
  fill: none !important;
  stroke: #6d7d73 !important;
  stroke-width: 1.9 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-copy > strong {
  width: min(100%, 520px) !important;
  margin: 2px 0 0 !important;
  color: #12331f !important;
  font-size: clamp(32px, 2.65vw, 45px) !important;
  font-weight: 900 !important;
  line-height: .98 !important;
  letter-spacing: -.035em !important;
  text-wrap: balance !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-subtitle {
  display: -webkit-box !important;
  width: min(100%, 480px) !important;
  max-width: 480px !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #617067 !important;
  font-size: 13.5px !important;
  font-weight: 520 !important;
  line-height: 1.35 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-benefits {
  display: flex !important;
  width: min(100%, 500px) !important;
  max-width: 500px !important;
  gap: 7px !important;
  margin: 2px 0 0 !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-benefits > span {
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 6px !important;
  min-width: 0 !important;
  padding: 7px 9px !important;
  border: 1px solid rgba(21, 81, 43, .08) !important;
  border-radius: 11px !important;
  background: rgba(255, 255, 255, .76) !important;
  box-shadow: 0 8px 20px rgba(20, 66, 37, .05) !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-benefits svg {
  width: 28px !important;
  height: 28px !important;
  padding: 6px !important;
  box-sizing: border-box !important;
  border-radius: 9px !important;
  background: rgba(234, 250, 224, .95) !important;
  fill: none !important;
  stroke: #0d8c40 !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-benefits b {
  color: #2b3c31 !important;
  font-size: 9.5px !important;
  font-weight: 820 !important;
  line-height: 1.14 !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-footer {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: min(100%, 520px) !important;
  margin-top: 4px !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 15px !important;
  flex: 0 0 auto !important;
  min-width: 172px !important;
  min-height: 48px !important;
  padding: 0 22px !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg, #0d9a48, #07853e) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 12px 26px rgba(8, 139, 61, .19) !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
  height: 48px !important;
  max-width: 205px !important;
  padding: 4px 9px 4px 4px !important;
  border: 1px solid rgba(17, 92, 44, .09) !important;
  border-radius: 13px !important;
  background: rgba(255,255,255,.79) !important;
  box-shadow: 0 8px 22px rgba(27, 74, 42, .06) !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview > img {
  display: block !important;
  width: 54px !important;
  height: 40px !important;
  flex: 0 0 54px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 9px !important;
  object-fit: cover !important;
  transform: none !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview > span {
  display: grid !important;
  min-width: 0 !important;
  gap: 1px !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview small {
  overflow: hidden !important;
  color: #849188 !important;
  font-size: 8.5px !important;
  font-weight: 720 !important;
  line-height: 1.1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview b {
  overflow: hidden !important;
  color: #24452f !important;
  font-size: 9.5px !important;
  font-weight: 850 !important;
  line-height: 1.12 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.overview-page .overview-hero-ad-v34 > .overview-partner {
  position: absolute !important;
  z-index: 5 !important;
  top: 0 !important;
  right: 28px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 104px !important;
  height: 112px !important;
  padding: 12px 10px 18px !important;
  border: 0 !important;
  border-radius: 0 0 16px 16px !important;
  background:
    linear-gradient(180deg, #0b6d3a 0%, #07502c 100%) !important;
  color: #fff !important;
  text-align: center !important;
  box-shadow: 0 13px 30px rgba(6, 75, 38, .20) !important;
  clip-path: polygon(0 0, 100% 0, 100% 83%, 50% 100%, 0 83%) !important;
}

body.overview-page .overview-hero-ad-v34 > .overview-partner > span {
  color: #f2c75d !important;
  font-size: 19px !important;
  line-height: 1 !important;
}

body.overview-page .overview-hero-ad-v34 > .overview-partner > small {
  margin-top: 4px !important;
  color: #f4cf6b !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
}

body.overview-page .overview-hero-ad-v34 > .overview-partner > b {
  margin-top: 1px !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1080px) {
  body.overview-page .overview-hero-ad.overview-hero-ad-v34 {
    height: 350px !important;
    min-height: 350px !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-ad-media {
    width: 58% !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-ad-copy {
    width: 55% !important;
    padding: 22px 26px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-company-logo {
    width: 60px !important;
    height: 60px !important;
    flex-basis: 60px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-copy > strong {
    font-size: clamp(29px, 3.9vw, 37px) !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-benefits > span:nth-child(2) {
    display: none !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-partner {
    right: 18px !important;
    width: 88px !important;
    height: 100px !important;
  }
}

/* Mobile: media first, then premium identity/copy. */
@media (max-width: 767px) {
  body.overview-page .overview-hero-ad.overview-hero-ad-v34 {
    height: 500px !important;
    min-height: 500px !important;
    max-height: 500px !important;
    border-radius: 22px !important;
  }

  body.overview-page .overview-hero-ad-v34::before,
  body.overview-page .overview-hero-ad-v34::after {
    display: none !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-ad-media {
    inset: 0 0 auto 0 !important;
    width: 100% !important;
    height: 43% !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-ad-media > img {
    object-position: center center !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-hero-shade {
    background:
      linear-gradient(180deg,
        rgba(255,255,255,0) 0%,
        rgba(250,255,245,.04) 28%,
        rgba(250,255,245,.88) 42%,
        #f9fff3 50%,
        #f9fff3 100%) !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-ad-copy {
    inset: auto 0 0 0 !important;
    width: 100% !important;
    height: 61% !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    padding: 10px 15px 15px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-badge {
    min-height: 24px !important;
    padding: 0 9px !important;
    font-size: 9px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-company {
    gap: 10px !important;
    margin: 0 !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-company-logo {
    width: 52px !important;
    height: 52px !important;
    flex-basis: 52px !important;
    padding: 4px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-company-text > b {
    font-size: 17px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-company-text > small {
    font-size: 10px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-copy > strong {
    font-size: clamp(27px, 8vw, 34px) !important;
    line-height: 1 !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-subtitle {
    max-width: 100% !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    -webkit-line-clamp: 1 !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-benefits {
    width: 100% !important;
    gap: 5px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-benefits > span {
    flex: 1 1 0 !important;
    grid-template-columns: 23px minmax(0, 1fr) !important;
    gap: 4px !important;
    padding: 5px 6px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-benefits svg {
    width: 23px !important;
    height: 23px !important;
    padding: 5px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-benefits b {
    font-size: 7.8px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-footer {
    gap: 7px !important;
    width: 100% !important;
    margin-top: 2px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-button {
    min-width: 132px !important;
    min-height: 43px !important;
    padding: 0 15px !important;
    font-size: 11px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview {
    height: 43px !important;
    max-width: 170px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview > img {
    width: 48px !important;
    height: 35px !important;
    flex-basis: 48px !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-partner {
    top: 0 !important;
    right: 12px !important;
    width: 76px !important;
    height: 78px !important;
    padding: 8px 6px 13px !important;
    border-radius: 0 0 12px 12px !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-partner > span {
    font-size: 14px !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-partner > small {
    font-size: 7px !important;
  }

  body.overview-page .overview-hero-ad-v34 > .overview-partner > b {
    font-size: 11px !important;
  }
}

@media (max-width: 390px) {
  body.overview-page .overview-hero-ad.overview-hero-ad-v34 {
    height: 480px !important;
    min-height: 480px !important;
    max-height: 480px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview > span {
    display: none !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview {
    width: 49px !important;
    min-width: 49px !important;
    padding-right: 4px !important;
  }

  body.overview-page .overview-hero-ad-v34 .overview-ad-benefits > span:nth-child(2) {
    display: none !important;
  }
}

/* Dark mode keeps the premium composition without flattening the photo. */
body.dark.overview-page .overview-hero-ad.overview-hero-ad-v34,
body.dark-theme.overview-page .overview-hero-ad.overview-hero-ad-v34 {
  --ad-ink: #eef8ef;
  --ad-muted: #b2c1b6;
  border-color: rgba(155, 230, 118, .14) !important;
  background: #132319 !important;
}

body.dark.overview-page .overview-hero-ad-v34 > .overview-hero-shade,
body.dark-theme.overview-page .overview-hero-ad-v34 > .overview-hero-shade {
  background:
    linear-gradient(90deg,
      rgba(15, 34, 22, .99) 0%,
      rgba(15, 34, 22, .96) 36%,
      rgba(15, 34, 22, .62) 51%,
      rgba(15, 34, 22, .08) 69%,
      transparent 82%) !important;
}

body.dark.overview-page .overview-hero-ad-v34 .overview-ad-company-text > b,
body.dark-theme.overview-page .overview-hero-ad-v34 .overview-ad-company-text > b,
body.dark.overview-page .overview-hero-ad-v34 .overview-ad-copy > strong,
body.dark-theme.overview-page .overview-hero-ad-v34 .overview-ad-copy > strong {
  color: #f1faf1 !important;
}

body.dark.overview-page .overview-hero-ad-v34 .overview-ad-company-text > small,
body.dark-theme.overview-page .overview-hero-ad-v34 .overview-ad-company-text > small,
body.dark.overview-page .overview-hero-ad-v34 .overview-ad-subtitle,
body.dark-theme.overview-page .overview-hero-ad-v34 .overview-ad-subtitle {
  color: #afbeb3 !important;
}

body.dark.overview-page .overview-hero-ad-v34 .overview-ad-benefits > span,
body.dark-theme.overview-page .overview-hero-ad-v34 .overview-ad-benefits > span,
body.dark.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview,
body.dark-theme.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview {
  border-color: rgba(167, 234, 123, .10) !important;
  background: rgba(255,255,255,.07) !important;
}

body.dark.overview-page .overview-hero-ad-v34 .overview-ad-benefits b,
body.dark-theme.overview-page .overview-hero-ad-v34 .overview-ad-benefits b,
body.dark.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview b,
body.dark-theme.overview-page .overview-hero-ad-v34 .overview-ad-listing-preview b {
  color: #e5f1e7 !important;
}

@media (max-width: 767px) {
  body.dark.overview-page .overview-hero-ad-v34 > .overview-hero-shade,
  body.dark-theme.overview-page .overview-hero-ad-v34 > .overview-hero-shade {
    background:
      linear-gradient(180deg,
        transparent 0%,
        rgba(15,34,22,.10) 28%,
        rgba(15,34,22,.90) 42%,
        #0f2216 50%,
        #0f2216 100%) !important;
  }
}


/* ============================================================
   MAKON V36 — AUTHORITATIVE RICH OVERVIEW AD
   Isolated from the accumulated legacy hero rules above.
   Target: bright editorial left panel + full campaign photo on right.
   ============================================================ */
body.overview-page .overview-ad-carousel {
  position: relative !important;
  width: 100% !important;
  margin: 0 0 26px !important;
}

body.overview-page .overview-ad-carousel .overview-ad-stage {
  position: relative !important;
  width: 100% !important;
  height: clamp(430px, 29.5vw, 480px) !important;
  min-height: 430px !important;
  max-height: 480px !important;
  overflow: hidden !important;
  border-radius: 28px !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad.overview-hero-ad-v36 {
  --ad-accent: #079447;
  --ad-heading: #0d2d1b;
  --ad-text: #66766c;
  --ad-panel: #fbfff5;
  --ad-button: #079447;
  --ad-button-text: #fff;
  --ad-partner: #075b35;
  position: absolute !important;
  inset: 0 !important;
  isolation: isolate !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
  border: 1px solid rgba(18,78,42,.12) !important;
  border-radius: 28px !important;
  background: var(--ad-panel) !important;
  color: var(--ad-heading) !important;
  text-decoration: none !important;
  box-shadow: 0 22px 56px rgba(28,69,44,.12) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateX(0) scale(1) !important;
  transition: opacity .48s ease, transform .48s cubic-bezier(.2,.75,.25,1), visibility .48s !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36.is-active {
  z-index: 2 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

body.overview-page .overview-ad-carousel[data-transition="slide"] .overview-hero-ad-v36 { transform: translateX(3%) !important; }
body.overview-page .overview-ad-carousel[data-transition="slide"] .overview-hero-ad-v36.is-active { transform: translateX(0) !important; }
body.overview-page .overview-ad-carousel[data-transition="zoom"] .overview-hero-ad-v36 { transform: scale(1.02) !important; }
body.overview-page .overview-ad-carousel[data-transition="zoom"] .overview-hero-ad-v36.is-active { transform: scale(1) !important; }

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-media > img {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: 68% center !important;
  transform: none !important;
  filter: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

/* Old overview passes explicitly hid this layer. V36 must turn it back on. */
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-hero-shade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 17% 88%, color-mix(in srgb, var(--ad-accent) 13%, transparent), transparent 32%),
    linear-gradient(90deg,
      color-mix(in srgb, var(--ad-panel) 98%, white) 0%,
      color-mix(in srgb, var(--ad-panel) 97%, transparent) 31%,
      color-mix(in srgb, var(--ad-panel) 90%, transparent) 39%,
      color-mix(in srgb, var(--ad-panel) 64%, transparent) 49%,
      color-mix(in srgb, var(--ad-panel) 20%, transparent) 62%,
      transparent 72%) !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-copy {
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  z-index: 3 !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: 54% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-width: none !important;
  gap: 9px !important;
  margin: 0 !important;
  padding: 16px 30px 18px 38px !important;
  overflow: visible !important;
  color: var(--ad-heading) !important;
  background: transparent !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-copy::after {
  display: none !important;
  content: none !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-height: 0 !important;
  margin: 0 0 1px !important;
  padding: 6px 10px !important;
  border: 1px solid color-mix(in srgb, var(--ad-accent) 28%, transparent) !important;
  border-radius: 999px !important;
  background: color-mix(in srgb, var(--ad-panel) 91%, white) !important;
  color: var(--ad-accent) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: min(100%, 520px) !important;
  min-width: 0 !important;
  margin: 0 0 1px !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-logo {
  display: grid !important;
  place-items: center !important;
  width: 76px !important;
  height: 76px !important;
  flex: 0 0 76px !important;
  box-sizing: border-box !important;
  padding: 5px !important;
  border: 2px solid rgba(255,255,255,.98) !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: 0 10px 26px rgba(15,68,35,.17) !important;
  overflow: hidden !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-logo > img {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  transform: none !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-logo-initial {
  display: grid !important;
  width: 100% !important;
  height: 100% !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, var(--ad-accent), #084a2c) !important;
  color: #fff !important;
  font-size: 28px !important;
  font-weight: 950 !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-text {
  display: grid !important;
  min-width: 0 !important;
  gap: 5px !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-text > b {
  min-width: 0 !important;
  overflow: hidden !important;
  color: var(--ad-heading) !important;
  font-size: clamp(22px, 1.85vw, 29px) !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-text > small {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  color: var(--ad-text) !important;
  font-size: 11px !important;
  font-weight: 760 !important;
  line-height: 1.2 !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-text > small > span { color: var(--ad-accent) !important; }

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-copy > strong {
  display: block !important;
  width: min(100%, 570px) !important;
  max-width: 570px !important;
  margin: 3px 0 0 !important;
  color: var(--ad-heading) !important;
  font-size: clamp(34px, 2.75vw, 48px) !important;
  font-weight: 950 !important;
  line-height: .98 !important;
  letter-spacing: -.036em !important;
  text-wrap: balance !important;
  text-shadow: none !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-subtitle {
  display: -webkit-box !important;
  width: min(100%, 500px) !important;
  max-width: 500px !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: var(--ad-text) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits {
  display: flex !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: min(100%, 520px) !important;
  max-width: 520px !important;
  margin: 1px 0 0 !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits > span {
  display: grid !important;
  grid-template-columns: 30px minmax(0,1fr) !important;
  align-items: center !important;
  gap: 7px !important;
  min-width: 0 !important;
  min-height: 46px !important;
  flex: 1 1 0 !important;
  padding: 6px 8px !important;
  border: 1px solid color-mix(in srgb, var(--ad-accent) 13%, transparent) !important;
  border-radius: 11px !important;
  background: color-mix(in srgb, var(--ad-panel) 86%, white) !important;
  box-shadow: 0 7px 18px rgba(20,66,37,.04) !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefit-icon {
  display: grid !important;
  place-items: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 9px !important;
  background: color-mix(in srgb, var(--ad-accent) 11%, white) !important;
  color: var(--ad-icon, var(--ad-accent)) !important;
  font-size: 16px !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits b {
  min-width: 0 !important;
  max-width: none !important;
  color: var(--ad-heading) !important;
  font-size: 9px !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-footer {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: min(100%, 690px) !important;
  margin: 3px 0 0 !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  min-width: 188px !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 13px !important;
  background: var(--ad-button) !important;
  color: var(--ad-button-text) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--ad-button) 24%, transparent) !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-width: 0 !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb {
  position: relative !important;
  display: block !important;
  width: 72px !important;
  height: 50px !important;
  flex: 0 0 72px !important;
  box-sizing: border-box !important;
  padding: 2px !important;
  border: 1px solid rgba(255,255,255,.92) !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 8px 18px rgba(27,67,41,.10) !important;
  overflow: hidden !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb > img {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 7px !important;
  transform: none !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-partner {
  position: absolute !important;
  z-index: 5 !important;
  top: 0 !important;
  right: 28px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 108px !important;
  height: 120px !important;
  box-sizing: border-box !important;
  padding: 11px 9px 19px !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, var(--ad-partner), color-mix(in srgb, var(--ad-partner) 80%, black)) !important;
  color: #fff !important;
  clip-path: polygon(0 0,100% 0,100% 83%,50% 100%,0 83%) !important;
  box-shadow: 0 13px 30px color-mix(in srgb, var(--ad-partner) 24%, transparent) !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-partner > span { color: #efc85f !important; font-size: 19px !important; line-height: 1 !important; }
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-partner > small { color: #efc85f !important; font-size: 9px !important; font-weight: 900 !important; letter-spacing: .08em !important; }
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-partner > b { color: #fff !important; font-size: 16px !important; font-weight: 950 !important; }

@media (max-width: 1180px) {
  body.overview-page .overview-ad-carousel .overview-ad-stage { height: 420px !important; min-height: 420px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-copy { width: 58% !important; padding: 16px 24px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-logo { width: 66px !important; height: 66px !important; flex-basis: 66px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-copy > strong { font-size: clamp(31px,3vw,42px) !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb:nth-child(n+4) { display: none !important; }
}

/* Phone/tablet contract: image on top, information below. */
@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel { margin-bottom: 20px !important; }
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    height: 620px !important;
    min-height: 620px !important;
    max-height: none !important;
    border-radius: 22px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad.overview-hero-ad-v36 { border-radius: 22px !important; background: var(--ad-panel) !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-media { inset: 0 0 auto !important; height: 43% !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-media > img { object-position: center !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-hero-shade {
    display: block !important;
    background: linear-gradient(180deg, transparent 0%, rgba(251,255,245,.05) 28%, color-mix(in srgb,var(--ad-panel) 92%,transparent) 42%, var(--ad-panel) 48%, var(--ad-panel) 100%) !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-copy {
    inset: auto 0 0 !important;
    width: 100% !important;
    height: 61% !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    padding: 12px 15px 16px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-badge { padding: 5px 9px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company { gap: 10px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-logo { width: 54px !important; height: 54px !important; flex-basis: 54px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-text > b { font-size: 18px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-copy > strong { font-size: clamp(27px,8vw,34px) !important; line-height: 1 !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-subtitle { width: 100% !important; max-width: 100% !important; font-size: 11px !important; -webkit-line-clamp: 1 !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits { width: 100% !important; max-width: 100% !important; gap: 5px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits > span { min-height: 42px !important; grid-template-columns: 26px minmax(0,1fr) !important; padding: 5px 6px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefit-icon { width: 26px !important; height: 26px !important; font-size: 14px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits b { font-size: 7.7px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-footer { width: 100% !important; gap: 7px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-button { min-width: 136px !important; min-height: 43px !important; padding: 0 15px !important; font-size: 11px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb { width: 50px !important; height: 39px !important; flex-basis: 50px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb:nth-child(n+4) { display: none !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-partner { right: 12px !important; width: 76px !important; height: 82px !important; padding: 7px 5px 13px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-partner > b { font-size: 11px !important; }
}

@media (max-width: 390px) {
  body.overview-page .overview-ad-carousel .overview-ad-stage { height: 600px !important; min-height: 600px !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits > span:nth-child(3) { display: none !important; }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb:nth-child(n+3) { display: none !important; }
}

/* ============================================================
   MAKON V38 — HERO GALLERY + CAROUSEL CONTROLS
   ============================================================ */
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery {
  gap: 9px !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb {
  width: 84px !important;
  height: 58px !important;
  flex-basis: 84px !important;
  padding: 2px !important;
  border-radius: 11px !important;
}
body.overview-page .overview-ad-carousel .overview-ad-controls {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  width: max-content !important;
  max-width: calc(100% - 24px) !important;
  margin: 12px auto 0 !important;
  padding: 6px 8px !important;
  border: 1px solid rgba(16,121,57,.10) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 8px 24px rgba(28,73,42,.08) !important;
  backdrop-filter: blur(12px) !important;
}
body.overview-page .overview-ad-carousel .overview-ad-nav {
  appearance: none !important;
  display: grid !important;
  place-items: center !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  margin: 0 !important;
  padding: 0 0 2px !important;
  border: 1px solid rgba(7,148,71,.17) !important;
  border-radius: 50% !important;
  background: #f4fbf5 !important;
  color: #078c43 !important;
  font: 800 25px/1 Arial,sans-serif !important;
  cursor: pointer !important;
  box-shadow: none !important;
  transition: transform .18s ease, background .18s ease, color .18s ease !important;
}
body.overview-page .overview-ad-carousel .overview-ad-nav:hover {
  transform: translateY(-1px) !important;
  background: #079447 !important;
  color: #fff !important;
}
body.overview-page .overview-ad-carousel .overview-ad-dots {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}
body.overview-page .overview-ad-carousel .overview-ad-dots button {
  appearance: none !important;
  width: 8px !important;
  height: 8px !important;
  min-width: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #cfe4d5 !important;
  cursor: pointer !important;
  overflow: hidden !important;
  transition: width .2s ease, background .2s ease !important;
}
body.overview-page .overview-ad-carousel .overview-ad-dots button > span { display: none !important; }
body.overview-page .overview-ad-carousel .overview-ad-dots button.active {
  width: 24px !important;
  background: #079447 !important;
}
body.overview-page .overview-ad-carousel .overview-ad-progress {
  display: block !important;
  width: min(180px, 42vw) !important;
  height: 3px !important;
  margin: 6px auto 0 !important;
  border-radius: 99px !important;
  background: #e8f2ea !important;
  overflow: hidden !important;
}
body.overview-page .overview-ad-carousel .overview-ad-progress > span {
  display: block !important;
  width: 0;
  height: 100% !important;
  border-radius: inherit !important;
  background: #079447 !important;
}
body.overview-page .overview-hero-ad.is-non-clickable { cursor: default !important; }
body.overview-page .overview-hero-ad-v36 .overview-ad-footer.no-action { justify-content: flex-start !important; }
@media (max-width: 1180px) {
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb {
    width: 72px !important; height: 51px !important; flex-basis: 72px !important;
  }
}
@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb {
    width: 58px !important; height: 43px !important; flex-basis: 58px !important;
  }
  body.overview-page .overview-ad-carousel .overview-ad-controls { margin-top: 9px !important; }
}

/* MAKON V38.1 — city + street line */
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-company-text > small {
  max-width: 360px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}


/* ============================================================
   MAKON V38.2 — HERO ALIGNMENT + REAL BENEFIT ICONS
   ============================================================ */
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefit-icon svg {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.9 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
@media (min-width: 768px) {
  /* Keep identity/title high, but place the action zone lower like the approved reference. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits {
    margin-top: 20px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-footer {
    margin-top: 8px !important;
  }
}
@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefit-icon svg {
    width: 14px !important;
    height: 14px !important;
  }
}

/* ============================================================
   MAKON V38.3 — HERO POLISH + RESPONSIVE HEADER SEARCH
   ============================================================ */
@media (min-width: 768px) {
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-copy {
    justify-content: flex-start !important;
    padding-bottom: 28px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits {
    margin-top: 18px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-footer {
    margin-top: auto !important;
    align-items: flex-end !important;
    padding-top: 12px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery {
    gap: 10px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb {
    width: 96px !important;
    height: 72px !important;
    flex-basis: 96px !important;
    border-radius: 14px !important;
  }
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits > span {
  grid-template-columns: 36px minmax(0,1fr) !important;
  min-height: 52px !important;
  padding: 7px 10px !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefit-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 11px !important;
  background: color-mix(in srgb, var(--ad-accent) 14%, white) !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ad-accent) 10%, transparent) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits b {
  font-size: 10px !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb {
  position: relative !important;
  width: 90px !important;
  height: 66px !important;
  flex-basis: 90px !important;
  border-radius: 13px !important;
  overflow: hidden !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb.has-caption::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 34px;
  background: linear-gradient(180deg, transparent, rgba(12,33,19,.76));
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-meta {
  position: absolute;
  left: 6px;
  right: 6px;
  bottom: 5px;
  z-index: 2;
  display: grid;
  gap: 1px;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-meta b,
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-meta small {
  display: block;
  overflow: hidden;
  color: #fff;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-meta b { font-size: 9px; font-weight: 900; }
body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-meta small { font-size: 8px; opacity: .92; }
@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    height: 565px !important;
    min-height: 565px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 > .overview-ad-copy {
    height: 58% !important;
    padding: 12px 14px 14px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits {
    gap: 6px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefits > span {
    grid-template-columns: 30px minmax(0,1fr) !important;
    min-height: 46px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-benefit-icon {
    width: 30px !important;
    height: 30px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-footer {
    margin-top: auto !important;
    align-items: center !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-button {
    min-width: 150px !important;
    min-height: 48px !important;
    flex: 1 1 auto !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery {
    gap: 8px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb {
    width: 74px !important;
    height: 54px !important;
    flex-basis: 74px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb:nth-child(n+4) {
    display: none !important;
  }
}
@media (max-width: 390px) {
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    height: 540px !important;
    min-height: 540px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v36 .overview-ad-gallery-thumb {
    width: 66px !important;
    height: 50px !important;
    flex-basis: 66px !important;
  }
}

@media (max-width: 767px) {
  body.overview-page .event-header .event-search {
    display: none !important;
  }
  body.overview-page .event-header .event-profile-chip {
    display: none !important;
  }
  body.overview-page .event-header .event-mobile-search-toggle {
    display: inline-grid !important;
    place-items: center !important;
    width: 54px !important;
    height: 54px !important;
    border: 0 !important;
    border-radius: 18px !important;
    background: #eef6e8 !important;
    color: #189038 !important;
    box-shadow: none !important;
  }
  body.overview-page .event-header .event-mobile-search-toggle svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  body.overview-page .event-header.is-search-open .event-location,
  body.overview-page .event-header.is-search-open .event-mobile-menu,
  body.overview-page .event-header.is-search-open .global-controls {
    display: none !important;
  }
  body.overview-page .event-header.is-search-open .event-search {
    display: grid !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-top: 8px !important;
  }
  body.overview-page .event-header.is-search-open .event-mobile-search-toggle {
    background: #079447 !important;
    color: #fff !important;
  }
}

/* ============================================================
   MAKON V38.4 — CATEGORY SHOWCASE HERO
   Clean isolated banner contract for desktop / tablet / phone.
   Legacy V35–V38.3 rules intentionally do not target .overview-hero-ad-v38.
   ============================================================ */
body.overview-page:not(.dark):not(.dark-theme) {
  background: #fff !important;
}
body.overview-page:not(.dark):not(.dark-theme) .event-header {
  background: rgba(255,255,255,.96) !important;
}
body.overview-page:not(.dark):not(.dark-theme) .event-header-inner,
body.overview-page:not(.dark):not(.dark-theme) .overview-shell {
  background: #fff !important;
}
body.overview-page .event-mobile-search-toggle { display: none; }

body.overview-page .overview-ad-carousel .overview-ad-stage {
  height: clamp(470px, 31vw, 520px) !important;
  min-height: 470px !important;
  max-height: 520px !important;
  border-radius: 28px !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad.overview-hero-ad-v38 {
  --ad-accent:#079447;
  --ad-heading:#0d2d1b;
  --ad-text:#66766c;
  --ad-panel:#fbfff5;
  --ad-partner:#075b35;
  position:absolute !important;
  inset:0 !important;
  isolation:isolate !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
  border:1px solid color-mix(in srgb,var(--ad-accent) 16%,transparent) !important;
  border-radius:28px !important;
  background:var(--ad-panel) !important;
  color:var(--ad-heading) !important;
  text-decoration:none !important;
  box-shadow:0 22px 58px rgba(20,65,38,.11) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateX(0) scale(1) !important;
  transition:opacity .48s ease,transform .48s cubic-bezier(.2,.75,.25,1),visibility .48s !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v38.is-active {
  z-index:2 !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
body.overview-page .overview-ad-carousel[data-transition="slide"] .overview-hero-ad-v38 { transform:translateX(3%) !important; }
body.overview-page .overview-ad-carousel[data-transition="slide"] .overview-hero-ad-v38.is-active { transform:translateX(0) !important; }
body.overview-page .overview-ad-carousel[data-transition="zoom"] .overview-hero-ad-v38 { transform:scale(1.018) !important; }
body.overview-page .overview-ad-carousel[data-transition="zoom"] .overview-hero-ad-v38.is-active { transform:scale(1) !important; }

body.overview-page .overview-hero-ad-v38 > .overview-ad-media {
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
  pointer-events:none !important;
}
body.overview-page .overview-hero-ad-v38 > .overview-ad-media > img {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:68% center !important;
  transform:none !important;
}
body.overview-page .overview-hero-ad-v38 > .overview-hero-shade {
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  display:block !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 16% 92%,color-mix(in srgb,var(--ad-accent) 13%,transparent),transparent 32%),
    linear-gradient(90deg,
      color-mix(in srgb,var(--ad-panel) 99%,white) 0%,
      color-mix(in srgb,var(--ad-panel) 98%,transparent) 31%,
      color-mix(in srgb,var(--ad-panel) 92%,transparent) 40%,
      color-mix(in srgb,var(--ad-panel) 63%,transparent) 51%,
      color-mix(in srgb,var(--ad-panel) 16%,transparent) 66%,
      transparent 75%) !important;
}
body.overview-page .overview-hero-ad-v38 > .overview-ad-copy {
  position:absolute !important;
  inset:0 auto 0 0 !important;
  z-index:3 !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  width:58% !important;
  height:100% !important;
  gap:9px !important;
  padding:20px 34px 26px 40px !important;
  color:var(--ad-heading) !important;
  overflow:hidden !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-badge {
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  padding:6px 10px !important;
  border:1px solid color-mix(in srgb,var(--ad-accent) 30%,transparent) !important;
  border-radius:999px !important;
  background:color-mix(in srgb,var(--ad-panel) 91%,white) !important;
  color:var(--ad-accent) !important;
  font-size:10px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-company {
  display:flex !important;
  align-items:center !important;
  gap:13px !important;
  min-width:0 !important;
  max-width:100% !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-company-logo {
  display:grid !important;
  place-items:center !important;
  width:66px !important;
  height:66px !important;
  flex:0 0 66px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:var(--ad-accent) !important;
  overflow:hidden !important;
  box-shadow:0 7px 20px rgba(24,70,39,.11) !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-company-logo > img {
  position:static !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  transform:none !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-logo-initial {
  font-size:24px !important;
  font-weight:950 !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-company-text {
  display:grid !important;
  min-width:0 !important;
  gap:3px !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-company-text > b {
  overflow:hidden !important;
  color:var(--ad-heading) !important;
  font-size:24px !important;
  font-weight:950 !important;
  line-height:1.04 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-company-text > small {
  max-width:390px !important;
  overflow:hidden !important;
  color:var(--ad-text) !important;
  font-size:11px !important;
  font-weight:700 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-company-text > small > span { color:var(--ad-accent) !important; }
body.overview-page .overview-hero-ad-v38 .overview-ad-copy > strong {
  display:block !important;
  max-width:620px !important;
  margin-top:5px !important;
  color:var(--ad-heading) !important;
  font-size:clamp(34px,3.2vw,50px) !important;
  font-weight:950 !important;
  line-height:.98 !important;
  letter-spacing:-.025em !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-subtitle {
  display:-webkit-box !important;
  max-width:540px !important;
  margin:0 !important;
  overflow:hidden !important;
  color:var(--ad-text) !important;
  font-size:13px !important;
  line-height:1.35 !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
}

/* Category-aware content cards replace old benefits + CTA. */
body.overview-page .overview-hero-ad-v38 .overview-ad-showcase {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:9px !important;
  width:min(100%,660px) !important;
  margin-top:auto !important;
  padding-top:12px !important;
  overflow:hidden !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-product-card {
  min-width:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(24,83,44,.09) !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.91) !important;
  box-shadow:0 8px 20px rgba(23,64,37,.075) !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-product-media {
  display:block !important;
  width:100% !important;
  height:76px !important;
  overflow:hidden !important;
  background:#f3f6f2 !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-product-media img {
  position:static !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  transform:none !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-product-body {
  display:grid !important;
  gap:2px !important;
  min-width:0 !important;
  padding:7px 9px 9px !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-product-body small {
  overflow:hidden !important;
  color:var(--ad-accent) !important;
  font-size:8px !important;
  font-weight:850 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-product-body b {
  overflow:hidden !important;
  color:var(--ad-heading) !important;
  font-size:10px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-hero-ad-v38 .overview-ad-product-body strong {
  overflow:hidden !important;
  color:#16823f !important;
  font-size:9px !important;
  font-weight:900 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-hero-ad-v38 > .overview-partner {
  position:absolute !important;
  z-index:5 !important;
  top:0 !important;
  right:28px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:108px !important;
  height:120px !important;
  box-sizing:border-box !important;
  padding:11px 9px 19px !important;
  background:linear-gradient(180deg,var(--ad-partner),color-mix(in srgb,var(--ad-partner) 80%,black)) !important;
  color:#fff !important;
  clip-path:polygon(0 0,100% 0,100% 83%,50% 100%,0 83%) !important;
  box-shadow:0 13px 30px color-mix(in srgb,var(--ad-partner) 24%,transparent) !important;
}
body.overview-page .overview-hero-ad-v38 > .overview-partner > span,
body.overview-page .overview-hero-ad-v38 > .overview-partner > small { color:#efc85f !important; }
body.overview-page .overview-hero-ad-v38 > .overview-partner > span { font-size:19px !important; }
body.overview-page .overview-hero-ad-v38 > .overview-partner > small { font-size:9px !important;font-weight:900 !important;letter-spacing:.08em !important; }
body.overview-page .overview-hero-ad-v38 > .overview-partner > b { font-size:16px !important;font-weight:950 !important; }

/* Tablet: keep a true two-zone hero; never drop header nav on top of banner. */
@media (min-width:768px) and (max-width:1180px) {
  body.overview-page .event-header-inner {
    grid-template-columns:auto auto minmax(240px,1fr) auto auto !important;
    min-height:70px !important;
  }
  body.overview-page .event-header-nav { display:none !important; }
  body.overview-page .event-mobile-menu { display:none !important; }
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    height:445px !important;
    min-height:445px !important;
    max-height:445px !important;
  }
  body.overview-page .overview-hero-ad-v38 > .overview-ad-copy {
    width:64% !important;
    gap:7px !important;
    padding:17px 22px 20px 24px !important;
  }
  body.overview-page .overview-hero-ad-v38 > .overview-ad-media > img { object-position:72% center !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-company-logo { width:58px !important;height:58px !important;flex-basis:58px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-company-text > b { font-size:20px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-copy > strong { font-size:clamp(30px,4vw,40px) !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-subtitle { font-size:11px !important; -webkit-line-clamp:1 !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-showcase { gap:7px !important;padding-top:8px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-media { height:66px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-body { padding:6px 7px 7px !important; }
  body.overview-page .overview-hero-ad-v38 > .overview-partner { right:16px !important;width:88px !important;height:99px !important; }
}

/* Phone: photo on top, content immediately below, 2x2 real showcase cards. */
@media (max-width:767px) {
  body.overview-page .event-header {
    background:#fff !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  body.overview-page .event-header-inner {
    min-height:76px !important;
    grid-template-columns:auto minmax(0,1fr) auto !important;
    grid-template-rows:auto !important;
    gap:8px !important;
    padding:10px 14px !important;
    background:#fff !important;
    border-radius:0 0 18px 18px !important;
  }
  body.overview-page .event-brand { gap:7px !important; }
  body.overview-page .event-brand img { width:36px !important;height:36px !important; }
  body.overview-page .event-brand span { font-size:18px !important; }
  body.overview-page .event-location { min-width:0 !important;padding:0 5px !important;font-size:13px !important; }
  body.overview-page .event-location #currentCityLabel { max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
  body.overview-page .event-profile-chip,
  body.overview-page .event-mobile-menu,
  body.overview-page .event-theme { display:none !important; }
  body.overview-page .event-mobile-search-toggle {
    display:grid !important;
    place-items:center !important;
    grid-column:3 !important;
    grid-row:1 !important;
    width:48px !important;
    height:48px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:16px !important;
    background:#f1f8ed !important;
    color:#138d3c !important;
  }
  body.overview-page .event-mobile-search-toggle svg { width:23px !important;height:23px !important;fill:none;stroke:currentColor;stroke-width:2; }
  body.overview-page .event-search { display:none !important; }
  body.overview-page .event-header.is-search-open .event-brand,
  body.overview-page .event-header.is-search-open .event-location { display:none !important; }
  body.overview-page .event-header.is-search-open .event-header-inner {
    grid-template-columns:minmax(0,1fr) auto !important;
  }
  body.overview-page .event-header.is-search-open .event-search {
    display:flex !important;
    grid-column:1 !important;
    grid-row:1 !important;
    width:100% !important;
    margin:0 !important;
  }
  body.overview-page .event-header.is-search-open .event-mobile-search-toggle { grid-column:2 !important;background:#079447 !important;color:#fff !important; }
  body.overview-page .overview-shell { width:100% !important;margin-top:0 !important; }
  body.overview-page .overview-chips { padding-left:16px !important;padding-right:16px !important; }
  body.overview-page .overview-ad-carousel { width:calc(100% - 28px) !important;margin-left:auto !important;margin-right:auto !important; }
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    height:570px !important;
    min-height:570px !important;
    max-height:570px !important;
    border-radius:24px !important;
  }
  body.overview-page .overview-hero-ad.overview-hero-ad-v38 { border-radius:24px !important; }
  body.overview-page .overview-hero-ad-v38 > .overview-ad-media { inset:0 0 auto !important;height:37% !important; }
  body.overview-page .overview-hero-ad-v38 > .overview-ad-media > img { object-position:center !important; }
  body.overview-page .overview-hero-ad-v38 > .overview-hero-shade {
    background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.03) 24%,color-mix(in srgb,var(--ad-panel) 78%,transparent) 36%,var(--ad-panel) 43%,var(--ad-panel) 100%) !important;
  }
  body.overview-page .overview-hero-ad-v38 > .overview-ad-copy {
    inset:auto 0 0 !important;
    width:100% !important;
    height:66% !important;
    gap:7px !important;
    padding:9px 16px 16px !important;
    overflow:hidden !important;
  }
  body.overview-page .overview-hero-ad-v38 .overview-ad-badge { padding:5px 9px !important;font-size:9px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-company { gap:10px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-company-logo { width:52px !important;height:52px !important;flex-basis:52px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-company-text > b { font-size:18px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-company-text > small { max-width:260px !important;font-size:9px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-copy > strong { margin-top:2px !important;font-size:31px !important;line-height:1 !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-subtitle { font-size:10px !important;-webkit-line-clamp:1 !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-showcase {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:repeat(2,76px) !important;
    gap:7px !important;
    width:100% !important;
    margin-top:auto !important;
    padding-top:4px !important;
  }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-card {
    display:grid !important;
    grid-template-columns:62px minmax(0,1fr) !important;
    min-height:76px !important;
    border-radius:13px !important;
  }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-media { width:62px !important;height:76px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-body { align-content:center !important;padding:6px 7px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-body small { font-size:7px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-body b { font-size:9px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-body strong { font-size:8px !important; }
  body.overview-page .overview-hero-ad-v38 > .overview-partner { display:none !important; }
  body.overview-page .overview-ad-carousel .overview-ad-controls { margin-top:8px !important; }
}
@media (max-width:390px) {
  body.overview-page .event-brand span { font-size:16px !important; }
  body.overview-page .event-location #currentCityLabel { max-width:74px; }
  body.overview-page .overview-ad-carousel .overview-ad-stage { height:548px !important;min-height:548px !important;max-height:548px !important; }
  body.overview-page .overview-hero-ad-v38 > .overview-ad-media { height:35% !important; }
  body.overview-page .overview-hero-ad-v38 > .overview-ad-copy { height:68% !important;padding:8px 12px 13px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-company-logo { width:48px !important;height:48px !important;flex-basis:48px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-copy > strong { font-size:28px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-showcase { grid-template-rows:repeat(2,72px) !important;gap:6px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-card { grid-template-columns:54px minmax(0,1fr) !important;min-height:72px !important; }
  body.overview-page .overview-hero-ad-v38 .overview-ad-product-media { width:54px !important;height:72px !important; }
}

/* =============================
   MAKON BANNER V39 RESTORE
   Goal: return to clean reference-like hero,
   keep full image visible, remove old CTA/benefits,
   and show company/menu/car/room cards instead.
   ============================= */
body.overview-page:not(.dark):not(.dark-theme),
body.overview-page:not(.dark):not(.dark-theme) .overview-shell,
body.overview-page:not(.dark):not(.dark-theme) .event-header,
body.overview-page:not(.dark):not(.dark-theme) .event-header-inner {
  background:#fff !important;
}
body.overview-page .event-mobile-search-toggle{display:none !important;}

body.overview-page .overview-ad-carousel .overview-ad-stage{
  height:392px !important;
  min-height:392px !important;
  max-height:392px !important;
  border-radius:28px !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad.overview-hero-ad-v39{
  --ad-accent:#079447;
  --ad-heading:#0d2d1b;
  --ad-text:#66766c;
  --ad-panel:#fbfff5;
  --ad-partner:#075b35;
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
  isolation:isolate !important;
  border:1px solid rgba(7,148,71,.14) !important;
  border-radius:28px !important;
  background:var(--ad-panel) !important;
  text-decoration:none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39.is-non-clickable{cursor:default !important;pointer-events:auto !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-media{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  overflow:hidden !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-media > img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:70% center !important;
  transform:none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-hero-shade{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 14% 95%, color-mix(in srgb,var(--ad-accent) 12%,transparent), transparent 34%),
    linear-gradient(90deg,
      color-mix(in srgb,var(--ad-panel) 99%,white) 0%,
      color-mix(in srgb,var(--ad-panel) 97%,transparent) 30%,
      color-mix(in srgb,var(--ad-panel) 88%,transparent) 39%,
      color-mix(in srgb,var(--ad-panel) 24%,transparent) 52%,
      transparent 67%) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-copy{
  position:absolute !important;
  inset:0 auto 0 0 !important;
  z-index:2 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:10px !important;
  width:48% !important;
  height:100% !important;
  box-sizing:border-box !important;
  padding:18px 24px 18px 34px !important;
  overflow:hidden !important;
  color:var(--ad-text) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-badge{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  padding:6px 12px !important;
  border-radius:999px !important;
  border:1px solid color-mix(in srgb,var(--ad-accent) 30%,transparent) !important;
  background:rgba(255,255,255,.75) !important;
  color:var(--ad-accent) !important;
  font-size:11px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  min-width:0 !important;
  max-width:100% !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-logo{
  display:grid !important;
  place-items:center !important;
  width:78px !important;
  height:78px !important;
  flex:0 0 78px !important;
  overflow:hidden !important;
  border-radius:50% !important;
  background:#fff !important;
  box-shadow:0 8px 22px rgba(24,70,39,.10) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-logo > img{
  position:static !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-logo-initial{
  font-size:28px !important;
  font-weight:950 !important;
  color:var(--ad-accent) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-text{
  display:grid !important;
  gap:4px !important;
  min-width:0 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-text > b{
  overflow:hidden !important;
  color:var(--ad-heading) !important;
  font-size:28px !important;
  font-weight:950 !important;
  line-height:1.05 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-text > small{
  overflow:hidden !important;
  max-width:340px !important;
  color:var(--ad-text) !important;
  font-size:12px !important;
  font-weight:700 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-text > small > span{color:var(--ad-accent) !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-copy > strong{
  display:block !important;
  max-width:520px !important;
  margin:2px 0 0 !important;
  color:var(--ad-heading) !important;
  font-size:clamp(34px,3.2vw,54px) !important;
  font-weight:950 !important;
  line-height:.96 !important;
  letter-spacing:-.03em !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-subtitle{
  display:-webkit-box !important;
  max-width:470px !important;
  margin:0 !important;
  overflow:hidden !important;
  color:var(--ad-text) !important;
  font-size:13px !important;
  line-height:1.38 !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-showcase{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
  width:min(100%,620px) !important;
  margin-top:auto !important;
  padding-top:10px !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-card{
  position:relative !important;
  display:block !important;
  min-width:0 !important;
  min-height:86px !important;
  overflow:hidden !important;
  border:1px solid rgba(22,83,43,.12) !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.94) !important;
  box-shadow:0 8px 18px rgba(18,63,34,.08) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-media{
  display:block !important;
  width:100% !important;
  height:86px !important;
  overflow:hidden !important;
  background:#fff !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-media img{
  position:static !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  transform:none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  display:grid !important;
  gap:1px !important;
  min-width:0 !important;
  padding:22px 8px 7px !important;
  background:linear-gradient(180deg,rgba(11,28,17,0) 0%,rgba(11,28,17,.26) 18%,rgba(11,28,17,.82) 100%) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body small,
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body b,
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body strong{
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:#fff !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body small{
  font-size:8px !important;
  font-weight:850 !important;
  color:#d8f7e1 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body b{
  font-size:10px !important;
  font-weight:900 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body strong{
  font-size:9px !important;
  font-weight:900 !important;
  color:#8ff0b2 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-partner{
  position:absolute !important;
  z-index:4 !important;
  top:0 !important;
  right:24px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:102px !important;
  height:116px !important;
  box-sizing:border-box !important;
  padding:10px 8px 18px !important;
  background:linear-gradient(180deg,var(--ad-partner),color-mix(in srgb,var(--ad-partner) 84%,black)) !important;
  color:#fff !important;
  clip-path:polygon(0 0,100% 0,100% 83%,50% 100%,0 83%) !important;
  box-shadow:0 13px 26px color-mix(in srgb,var(--ad-partner) 28%,transparent) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-partner > span,
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-partner > small{color:#efc85f !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-partner > span{font-size:18px !important;line-height:1 !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-partner > small{font-size:8px !important;font-weight:900 !important;letter-spacing:.08em !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-partner > b{font-size:15px !important;font-weight:950 !important;}

@media (min-width:768px) and (max-width:1180px){
  body.overview-page .overview-ad-carousel .overview-ad-stage{
    height:356px !important;
    min-height:356px !important;
    max-height:356px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-copy{
    width:52% !important;
    padding:16px 18px 16px 22px !important;
    gap:8px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-media > img{object-position:72% center !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-logo{width:64px !important;height:64px !important;flex-basis:64px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-text > b{font-size:23px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-copy > strong{font-size:clamp(29px,3.6vw,42px) !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-subtitle{font-size:11px !important;-webkit-line-clamp:2 !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-showcase{gap:8px !important;padding-top:8px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-card{min-height:76px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-media{height:76px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body{padding:18px 7px 6px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body b{font-size:9px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body strong{font-size:8px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-partner{right:16px !important;width:86px !important;height:97px !important;}
}

@media (max-width:767px){
  body.overview-page .event-header{
    background:#fff !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  body.overview-page .event-header-inner{
    min-height:72px !important;
    grid-template-columns:auto minmax(0,1fr) auto !important;
    grid-template-rows:auto !important;
    align-items:center !important;
    gap:8px !important;
    padding:8px 14px !important;
    background:#fff !important;
    border-radius:0 0 18px 18px !important;
  }
  body.overview-page .event-brand,
  body.overview-page .event-location{align-self:center !important;}
  body.overview-page .event-brand{gap:8px !important;}
  body.overview-page .event-brand img{width:36px !important;height:36px !important;}
  body.overview-page .event-brand span{font-size:18px !important;line-height:1 !important;}
  body.overview-page .event-location{min-width:0 !important;padding:0 4px !important;font-size:13px !important;}
  body.overview-page .event-location #currentCityLabel{max-width:92px !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
  body.overview-page .event-profile-chip,
  body.overview-page .event-mobile-menu,
  body.overview-page .event-theme{display:none !important;}
  body.overview-page .event-mobile-search-toggle{
    display:grid !important;
    place-items:center !important;
    grid-column:3 !important;
    grid-row:1 !important;
    width:48px !important;
    height:48px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:16px !important;
    background:#f1f8ed !important;
    color:#138d3c !important;
  }
  body.overview-page .event-mobile-search-toggle svg{width:22px !important;height:22px !important;fill:none !important;stroke:currentColor !important;stroke-width:2 !important;}
  body.overview-page .event-search{display:none !important;}
  body.overview-page .event-header.is-search-open .event-brand,
  body.overview-page .event-header.is-search-open .event-location{display:none !important;}
  body.overview-page .event-header.is-search-open .event-header-inner{grid-template-columns:minmax(0,1fr) auto !important;}
  body.overview-page .event-header.is-search-open .event-search{display:flex !important;grid-column:1 !important;grid-row:1 !important;width:100% !important;margin:0 !important;}
  body.overview-page .event-header.is-search-open .event-mobile-search-toggle{grid-column:2 !important;background:#079447 !important;color:#fff !important;}

  body.overview-page .overview-ad-carousel{width:calc(100% - 28px) !important;margin-left:auto !important;margin-right:auto !important;}
  body.overview-page .overview-ad-carousel .overview-ad-stage{
    height:546px !important;
    min-height:546px !important;
    max-height:546px !important;
    border-radius:24px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad.overview-hero-ad-v39{border-radius:24px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-media{inset:0 0 auto !important;height:38% !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-media > img{object-position:center !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-hero-shade{
    background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.03) 25%,color-mix(in srgb,var(--ad-panel) 76%,transparent) 35%,var(--ad-panel) 44%,var(--ad-panel) 100%) !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-copy{
    inset:auto 0 0 !important;
    width:100% !important;
    height:62% !important;
    padding:9px 14px 14px !important;
    gap:7px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-badge{font-size:9px !important;padding:5px 10px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company{gap:10px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-logo{width:56px !important;height:56px !important;flex-basis:56px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-text > b{font-size:19px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-text > small{max-width:250px !important;font-size:10px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-copy > strong{font-size:31px !important;line-height:1 !important;max-width:100% !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-subtitle{font-size:11px !important;-webkit-line-clamp:2 !important;max-width:100% !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-showcase{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
    width:100% !important;
    padding-top:4px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-card{min-height:88px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-media{height:88px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body{padding:20px 8px 7px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body b{font-size:10px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-body strong{font-size:9px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-partner{display:none !important;}
  body.overview-page .overview-ad-carousel .overview-ad-controls{margin-top:8px !important;}
}
@media (max-width:390px){
  body.overview-page .event-brand span{font-size:17px !important;}
  body.overview-page .event-location #currentCityLabel{max-width:76px !important;}
  body.overview-page .overview-ad-carousel .overview-ad-stage{
    height:528px !important;
    min-height:528px !important;
    max-height:528px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-media{height:36% !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 > .overview-ad-copy{height:64% !important;padding:8px 12px 12px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-company-logo{width:52px !important;height:52px !important;flex-basis:52px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-copy > strong{font-size:28px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-card{min-height:82px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v39 .overview-ad-product-media{height:82px !important;}
}

/* ============================================================
   MAKON BANNER V40 — FULL-PHOTO HERO + HORIZONTAL SHOWCASE
   Scope intentionally limited to .overview-hero-ad-v40.
   ============================================================ */
body.overview-page .overview-ad-carousel .overview-ad-stage {
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:3 / 1 !important;
  overflow:hidden !important;
  border-radius:28px !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad.overview-hero-ad-v40 {
  --ad-accent:#079447;
  --ad-heading:#0d2d1b;
  --ad-text:#66766c;
  --ad-panel:#fbfff5;
  --ad-partner:#075b35;
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  overflow:hidden !important;
  isolation:isolate !important;
  border-radius:28px !important;
  background:#fff !important;
  text-decoration:none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media {
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media > img {
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center !important;
  transform:none !important;
}
/* Photo is always full-banner. Panel color only controls the readable left overlay. */
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade {
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  display:block !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 12% 92%,color-mix(in srgb,var(--ad-accent) 13%,transparent),transparent 31%),
    linear-gradient(90deg,
      color-mix(in srgb,var(--ad-panel) 98%,white) 0%,
      color-mix(in srgb,var(--ad-panel) 96%,transparent) 27%,
      color-mix(in srgb,var(--ad-panel) 80%,transparent) 39%,
      color-mix(in srgb,var(--ad-panel) 34%,transparent) 50%,
      transparent 64%) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy {
  position:absolute !important;
  inset:0 auto 0 0 !important;
  z-index:2 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:8px !important;
  width:51% !important;
  height:100% !important;
  box-sizing:border-box !important;
  padding:18px 30px 16px 34px !important;
  overflow:hidden !important;
  color:var(--ad-text) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-badge {
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  width:max-content !important;
  padding:5px 10px !important;
  border:1px solid color-mix(in srgb,var(--ad-accent) 30%,transparent) !important;
  border-radius:999px !important;
  background:color-mix(in srgb,var(--ad-panel) 82%,white) !important;
  color:var(--ad-accent) !important;
  font-size:10px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company {
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-width:0 !important;
  max-width:100% !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo {
  display:grid !important;
  place-items:center !important;
  width:62px !important;
  height:62px !important;
  flex:0 0 62px !important;
  overflow:hidden !important;
  border-radius:50% !important;
  background:#fff !important;
  box-shadow:0 7px 18px rgba(19,67,35,.11) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo > img {
  position:static !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  transform:none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-logo-initial {
  color:var(--ad-accent) !important;
  font-size:24px !important;
  font-weight:950 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text {
  display:grid !important;
  gap:3px !important;
  min-width:0 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > b {
  overflow:hidden !important;
  color:var(--ad-heading) !important;
  font-size:24px !important;
  font-weight:950 !important;
  line-height:1.04 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > small {
  overflow:hidden !important;
  max-width:360px !important;
  color:var(--ad-text) !important;
  font-size:10px !important;
  font-weight:700 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > small > span {color:var(--ad-accent) !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong {
  display:block !important;
  max-width:560px !important;
  margin:1px 0 0 !important;
  color:var(--ad-heading) !important;
  font-size:clamp(32px,3vw,48px) !important;
  font-weight:950 !important;
  line-height:.98 !important;
  letter-spacing:-.025em !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-subtitle {
  display:-webkit-box !important;
  max-width:500px !important;
  margin:0 !important;
  overflow:hidden !important;
  color:var(--ad-text) !important;
  font-size:11px !important;
  line-height:1.35 !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell {
  position:relative !important;
  display:block !important;
  width:min(100%,650px) !important;
  margin-top:auto !important;
  padding:4px 22px 0 !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase {
  display:grid !important;
  grid-auto-flow:column !important;
  grid-auto-columns:calc((100% - 27px)/4) !important;
  grid-template-columns:none !important;
  grid-template-rows:1fr !important;
  gap:9px !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  overscroll-behavior-inline:contain !important;
  scroll-snap-type:x mandatory !important;
  scroll-behavior:smooth !important;
  scrollbar-width:none !important;
  touch-action:pan-x !important;
  -webkit-overflow-scrolling:touch !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase::-webkit-scrollbar {display:none !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card {
  position:relative !important;
  display:block !important;
  min-width:0 !important;
  height:78px !important;
  overflow:hidden !important;
  scroll-snap-align:start !important;
  border:1px solid rgba(21,78,40,.12) !important;
  border-radius:13px !important;
  background:rgba(255,255,255,.94) !important;
  box-shadow:0 7px 17px rgba(16,58,31,.09) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media {
  display:block !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
  background:#fff !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media img {
  position:static !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  transform:none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body {
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  display:grid !important;
  gap:1px !important;
  min-width:0 !important;
  padding:18px 6px 5px !important;
  background:linear-gradient(180deg,transparent,rgba(7,27,14,.84)) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong {
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small {color:#c9f4d8 !important;font-size:7px !important;font-weight:850 !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b {color:#fff !important;font-size:9px !important;font-weight:900 !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong {color:#8ff0b2 !important;font-size:8px !important;font-weight:900 !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-nav {
  position:absolute !important;
  z-index:4 !important;
  top:50% !important;
  display:grid !important;
  place-items:center !important;
  width:28px !important;
  height:28px !important;
  margin-top:-12px !important;
  border:1px solid rgba(7,148,71,.16) !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.94) !important;
  color:var(--ad-accent) !important;
  font:900 19px/1 Arial,sans-serif !important;
  box-shadow:0 5px 14px rgba(14,57,29,.12) !important;
  cursor:pointer !important;
  user-select:none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-nav.prev {left:-2px !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-nav.next {right:-2px !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner {
  position:absolute !important;
  z-index:4 !important;
  top:0 !important;
  right:24px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:98px !important;
  height:112px !important;
  box-sizing:border-box !important;
  padding:10px 8px 18px !important;
  background:linear-gradient(180deg,var(--ad-partner),color-mix(in srgb,var(--ad-partner) 82%,black)) !important;
  color:#fff !important;
  clip-path:polygon(0 0,100% 0,100% 83%,50% 100%,0 83%) !important;
  box-shadow:0 12px 26px color-mix(in srgb,var(--ad-partner) 24%,transparent) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner > span,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner > small {color:#efc85f !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner > span {font-size:17px !important;line-height:1 !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner > small {font-size:8px !important;font-weight:900 !important;letter-spacing:.08em !important;}
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner > b {font-size:14px !important;font-weight:950 !important;}

@media (min-width:768px) and (max-width:1180px) {
  body.overview-page .overview-ad-carousel .overview-ad-stage {aspect-ratio:3 / 1 !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy {width:55% !important;padding:14px 18px 14px 22px !important;gap:6px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo {width:54px !important;height:54px !important;flex-basis:54px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > b {font-size:19px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong {font-size:clamp(26px,3.5vw,38px) !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-subtitle {font-size:9px !important;-webkit-line-clamp:1 !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card {height:66px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell {padding-inline:19px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase {grid-auto-columns:calc((100% - 21px)/4) !important;gap:7px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner {right:14px !important;width:78px !important;height:90px !important;}
}

@media (max-width:767px) {
  body.overview-page .overview-ad-carousel {width:calc(100% - 24px) !important;margin-left:auto !important;margin-right:auto !important;}
  body.overview-page .overview-ad-carousel .overview-ad-stage {aspect-ratio:3 / 2 !important;border-radius:22px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad.overview-hero-ad-v40 {border-radius:22px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media {inset:0 !important;height:100% !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media > img {object-position:center !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade {
    background:
      linear-gradient(180deg,rgba(0,0,0,.02) 0%,transparent 22%,color-mix(in srgb,var(--ad-panel) 48%,transparent) 43%,color-mix(in srgb,var(--ad-panel) 90%,transparent) 61%,var(--ad-panel) 100%),
      linear-gradient(90deg,color-mix(in srgb,var(--ad-panel) 66%,transparent) 0%,transparent 78%) !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy {
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    gap:4px !important;
    padding:10px 12px 10px !important;
    justify-content:flex-end !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-badge {font-size:8px !important;padding:4px 8px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company {gap:8px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo {width:44px !important;height:44px !important;flex-basis:44px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > b {font-size:16px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > small {max-width:245px !important;font-size:8px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong {font-size:25px !important;max-width:100% !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-subtitle {font-size:8px !important;max-width:100% !important;-webkit-line-clamp:1 !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell {width:100% !important;margin-top:3px !important;padding:3px 17px 0 !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase {grid-auto-columns:calc((100% - 15px)/4) !important;gap:5px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card {height:60px !important;border-radius:10px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body {padding:14px 4px 4px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small {font-size:5.8px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b {font-size:7px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong {font-size:6.5px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-nav {width:24px !important;height:24px !important;font-size:16px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner {display:none !important;}
}

/* ============================================================
   MAKON BANNER V41 — FINAL STABILITY FIX
   Only fixes: full-photo visibility, active-slide transitions,
   mobile image fallback visibility, and readable overlays.
   ============================================================ */
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateX(0) scale(1) !important;
  transition:opacity .48s ease, transform .48s cubic-bezier(.2,.75,.25,1), visibility .48s !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41.is-active {
  z-index:2 !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
body.overview-page .overview-ad-carousel[data-transition="slide"] .overview-hero-ad-v41 {
  transform:translateX(2.5%) !important;
}
body.overview-page .overview-ad-carousel[data-transition="slide"] .overview-hero-ad-v41.is-active {
  transform:translateX(0) !important;
}
body.overview-page .overview-ad-carousel[data-transition="zoom"] .overview-hero-ad-v41 {
  transform:scale(1.018) !important;
}
body.overview-page .overview-ad-carousel[data-transition="zoom"] .overview-hero-ad-v41.is-active {
  transform:scale(1) !important;
}

/* The campaign photo is always the full hero. The panel color is overlay only. */
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media {
  inset:0 !important;
  width:100% !important;
  height:100% !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media > img {
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade {
  background:
    radial-gradient(circle at 12% 90%, color-mix(in srgb,var(--ad-accent) 10%,transparent), transparent 33%),
    linear-gradient(90deg,
      color-mix(in srgb,var(--ad-panel) 88%,transparent) 0%,
      color-mix(in srgb,var(--ad-panel) 78%,transparent) 24%,
      color-mix(in srgb,var(--ad-panel) 54%,transparent) 39%,
      color-mix(in srgb,var(--ad-panel) 18%,transparent) 55%,
      transparent 70%) !important;
}

/* Keep the editor-controlled content on the left without creating a split panel. */
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
  width:51% !important;
  background:transparent !important;
}

@media (min-width:768px) and (max-width:1180px) {
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade {
    background:linear-gradient(90deg,
      color-mix(in srgb,var(--ad-panel) 86%,transparent) 0%,
      color-mix(in srgb,var(--ad-panel) 68%,transparent) 30%,
      color-mix(in srgb,var(--ad-panel) 30%,transparent) 49%,
      transparent 68%) !important;
  }
}

@media (max-width:767px) {
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media {
    inset:0 !important;
    width:100% !important;
    height:100% !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media > img {
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade {
    background:
      linear-gradient(180deg,
        rgba(0,0,0,.02) 0%,
        rgba(0,0,0,.01) 22%,
        color-mix(in srgb,var(--ad-panel) 22%,transparent) 40%,
        color-mix(in srgb,var(--ad-panel) 66%,transparent) 60%,
        color-mix(in srgb,var(--ad-panel) 88%,transparent) 100%) !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
    width:100% !important;
    height:100% !important;
    background:transparent !important;
  }
}


/* ============================================================
   MAKON BANNER V41.1 — QUICK PUBLIC BANNER CORRECTIONS
   Fix only:
   1) remove desktop center divider / split feeling;
   2) slightly increase mobile banner visual height;
   3) move gallery texts under cards instead of over image.
   ============================================================ */

/* Desktop/tablet: keep the photo visible across the whole banner and soften the left readable overlay. */
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade {
  background:
    radial-gradient(circle at 12% 90%, color-mix(in srgb,var(--ad-accent) 8%,transparent), transparent 34%),
    linear-gradient(90deg,
      color-mix(in srgb,var(--ad-panel) 82%,transparent) 0%,
      color-mix(in srgb,var(--ad-panel) 64%,transparent) 19%,
      color-mix(in srgb,var(--ad-panel) 34%,transparent) 34%,
      color-mix(in srgb,var(--ad-panel) 14%,transparent) 46%,
      color-mix(in srgb,var(--ad-panel) 5%,transparent) 57%,
      transparent 72%) !important;
}

/* Wider photo visibility behind the content column. */
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy {
  width: 47% !important;
}

/* Gallery cards: image on top, text below card. */
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell {
  overflow: visible !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase {
  align-items: start !important;
  overflow-y: visible !important;
  padding-bottom: 2px !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-card,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media {
  display: block !important;
  width: 100% !important;
  height: 72px !important;
  overflow: hidden !important;
  border: 1px solid rgba(18,71,37,.12) !important;
  border-radius: 13px !important;
  background: #fff !important;
  box-shadow: 0 8px 18px rgba(18,71,37,.10) !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media img,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body {
  position: static !important;
  display: grid !important;
  gap: 2px !important;
  min-width: 0 !important;
  padding: 6px 2px 0 !important;
  background: none !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body small,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small,
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body b,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b,
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body strong,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body small,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small {
  color: color-mix(in srgb,var(--ad-text) 90%,#5f7568) !important;
  font-size: 8px !important;
  font-weight: 800 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body b,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b {
  color: var(--ad-heading) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
}
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body strong,
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong {
  color: var(--ad-accent) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
}

@media (min-width: 768px) and (max-width: 1180px) {
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy {
    width: 49% !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media {
    height: 66px !important;
  }
}

@media (max-width: 767px) {
  /* Keep mobile on a single row, but make the banner slightly taller so the photo breathes more. */
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    aspect-ratio: 1080 / 760 !important;
    min-height: 470px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade {
    background:
      linear-gradient(180deg,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,0) 34%,
        color-mix(in srgb,var(--ad-panel) 18%,transparent) 48%,
        color-mix(in srgb,var(--ad-panel) 42%,transparent) 61%,
        color-mix(in srgb,var(--ad-panel) 74%,transparent) 77%,
        color-mix(in srgb,var(--ad-panel) 92%,transparent) 100%) !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy {
    inset: auto 0 0 0 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 56% !important;
    justify-content: flex-end !important;
    padding: 12px 14px 14px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell {
    width: 100% !important;
    margin-top: 6px !important;
    padding: 4px 16px 0 !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase {
    grid-auto-columns: calc((100% - 15px) / 4) !important;
    gap: 5px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media {
    height: 64px !important;
    border-radius: 12px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body {
    padding-top: 5px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small {font-size: 7px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b {font-size: 8px !important;}
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong {font-size: 7.5px !important;}
}

/* ============================================================
   MAKON BANNER V41.2 — REMOVE LEGACY CENTER STRIPE
   The old generic .overview-ad-copy::after still painted a 108px
   desktop transition strip. New full-photo v40/v41 banners do not
   use that legacy pseudo-element.
   ============================================================ */
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy::after,
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy::after {
  content: none !important;
  display: none !important;
  position: static !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
  opacity: 0 !important;
  box-shadow: none !important;
}

/* ============================================================
   MAKON BANNER V41.3 — MOBILE HEADER / BADGE / GALLERY FIX
   Only requested mobile corrections:
   - compact header at the very top;
   - ad badge pinned to top-left of the banner;
   - gallery moved below the banner in one horizontal row.
   ============================================================ */
@media (max-width: 767px) {
  body.overview-page {
    --overview-header-height: 76px !important;
  }

  body.overview-page .event-header {
    position: sticky !important;
    top: 0 !important;
    height: 76px !important;
    min-height: 76px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  body.overview-page .event-header-inner {
    width: 100% !important;
    max-width: 100% !important;
    height: 76px !important;
    min-height: 76px !important;
    max-height: 76px !important;
    padding: 8px 14px !important;
    margin: 0 !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-rows: 60px !important;
    align-items: center !important;
    gap: 8px !important;
    border-radius: 0 0 16px 16px !important;
    background: #fff !important;
  }

  body.overview-page .event-brand,
  body.overview-page .event-location,
  body.overview-page .event-mobile-search-toggle {
    align-self: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body.overview-page .event-brand img {
    width: 34px !important;
    height: 34px !important;
  }

  body.overview-page .event-brand span {
    font-size: 18px !important;
    line-height: 1 !important;
  }

  body.overview-page .event-mobile-search-toggle {
    width: 48px !important;
    height: 48px !important;
  }

  /* Header is already in document flow: do not reserve another 154px inside main. */
  body.overview-page .overview-shell {
    padding-top: 8px !important;
  }

  /* Keep enough room below the hero for the external gallery row. */
  body.overview-page .overview-ad-carousel {
    padding-bottom: 116px !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-stage {
    overflow: visible !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
    overflow: visible !important;
  }

  /* Preserve rounded clipping for photo/shade while the gallery is outside the hero. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade {
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  /* "Реклама" always sits at the actual top of the mobile banner. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-badge,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-badge {
    position: absolute !important;
    top: 14px !important;
    left: 14px !important;
    z-index: 8 !important;
    margin: 0 !important;
    font-size: 9px !important;
    padding: 6px 10px !important;
    background: rgba(255, 255, 255, .88) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
  }

  /* Gallery becomes a separate strip BELOW the banner, never on top of the photo. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 10px) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 16px !important;
    z-index: 12 !important;
    overflow: visible !important;
    background: transparent !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 18px) / 4) !important;
    grid-template-columns: none !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 0 2px 4px !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase::-webkit-scrollbar,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase::-webkit-scrollbar {
    display: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-card {
    scroll-snap-align: start !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media {
    height: 68px !important;
    border-radius: 12px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body {
    padding: 5px 2px 0 !important;
  }

  /* Copy no longer reserves internal space for the gallery. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
    padding-bottom: 18px !important;
  }

  /* Carousel controls sit after the external gallery strip. */
  body.overview-page .overview-ad-carousel .overview-ad-controls {
    margin-top: 10px !important;
  }
}


/* ============================================================
   MAKON BANNER V41.4 — MOBILE PHOTO + DETAILS BELOW
   Requested mobile contract:
   - the hero itself is ONLY the campaign photo;
   - mobile photo uses the real 1080×720 ratio (3:2);
   - badge/company/title/subtitle/gallery live below the photo;
   - gallery remains one horizontal row and never disappears.
   Desktop/tablet are intentionally untouched.
   ============================================================ */
@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel {
    position: relative !important;
    width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
  }

  /* 1080×720 is 3:2. The stage is now only the photo area. */
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 3 / 2 !important;
    overflow: visible !important;
    border-radius: 22px !important;
    background: transparent !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    border-radius: 22px !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  /* Clean photo: no text or overlay sits on top of it. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    border: 1px solid rgba(7, 123, 67, .12) !important;
    border-radius: 22px !important;
    background: #f6f8f5 !important;
    box-shadow: 0 14px 34px rgba(18, 58, 34, .09) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media > img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade {
    display: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-partner {
    display: none !important;
  }

  /* Every text element is now a separate card BELOW the photo. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    z-index: 10 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 12px !important;
    overflow: visible !important;
    border: 1px solid rgba(7, 123, 67, .10) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .98) !important;
    color: var(--ad-text) !important;
    box-shadow: 0 14px 34px rgba(18, 58, 34, .08) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-badge,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-badge {
    position: static !important;
    align-self: flex-start !important;
    width: max-content !important;
    margin: 0 !important;
    padding: 5px 9px !important;
    border: 1px solid color-mix(in srgb, var(--ad-accent) 24%, transparent) !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--ad-accent) 7%, #fff) !important;
    color: var(--ad-accent) !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-logo {
    width: 48px !important;
    height: 48px !important;
    flex: 0 0 48px !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    background: #fff !important;
    box-shadow: 0 6px 18px rgba(20, 60, 34, .08) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-logo img {
    position: static !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text {
    display: grid !important;
    gap: 2px !important;
    min-width: 0 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text > b {
    overflow: hidden !important;
    color: var(--ad-heading) !important;
    font-size: 17px !important;
    font-weight: 950 !important;
    line-height: 1.06 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text > small {
    overflow: hidden !important;
    color: var(--ad-text) !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-copy > strong {
    display: block !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: var(--ad-heading) !important;
    font-size: 24px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-subtitle,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-subtitle {
    display: -webkit-box !important;
    max-width: 100% !important;
    margin: -2px 0 0 !important;
    overflow: hidden !important;
    color: var(--ad-text) !important;
    font-size: 10px !important;
    line-height: 1.3 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 1 !important;
  }

  /* Gallery belongs to the details card, in ONE row, four visible by default. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    margin: 2px 0 0 !important;
    padding: 0 18px !important;
    overflow: visible !important;
    background: transparent !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 18px) / 4) !important;
    grid-template-columns: none !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 2px 0 4px !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase::-webkit-scrollbar,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase::-webkit-scrollbar {
    display: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-card {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    height: auto !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    scroll-snap-align: start !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media {
    display: block !important;
    width: 100% !important;
    height: 58px !important;
    overflow: hidden !important;
    border: 1px solid rgba(18, 71, 37, .11) !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: 0 5px 13px rgba(18, 71, 37, .07) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transform: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body {
    position: static !important;
    display: grid !important;
    gap: 1px !important;
    min-width: 0 !important;
    padding: 4px 1px 0 !important;
    background: transparent !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body small {
    color: var(--ad-text) !important;
    font-size: 6.5px !important;
    font-weight: 800 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body b {
    color: var(--ad-heading) !important;
    font-size: 7.5px !important;
    font-weight: 900 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body strong {
    color: var(--ad-accent) !important;
    font-size: 7px !important;
    font-weight: 900 !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-showcase-nav {
    top: 31px !important;
    width: 25px !important;
    height: 25px !important;
    font-size: 17px !important;
  }

  /* Reserve exactly one compact details panel below the 3:2 photo. */
  body.overview-page .overview-ad-carousel.has-single-ad {
    margin-bottom: 250px !important;
  }

  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-controls {
    margin-top: 250px !important;
  }

  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-progress {
    margin-top: 6px !important;
  }
}

@media (max-width: 390px) {
  body.overview-page .overview-ad-carousel.has-single-ad {
    margin-bottom: 244px !important;
  }
  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-controls {
    margin-top: 244px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-copy > strong {
    font-size: 22px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media {
    height: 54px !important;
  }
}

/* ============================================================
   MAKON BANNER V41.5 — MOBILE DETAILS VISIBILITY FIX
   Fixes the blank reserved area from V41.4:
   photo and details now live as two real rows INSIDE each slide.
   ============================================================ */
@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel {
    width: calc(100% - 28px) !important;
    margin-inline: auto !important;
    overflow: visible !important;
  }

  /* Stage explicitly reserves photo (3:2) + compact details card. */
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    position: relative !important;
    width: 100% !important;
    height: calc((100vw - 56px) * 0.666667 + 224px) !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(18, 58, 34, .07) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
    position: absolute !important;
    inset: 0 !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    align-content: start !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(7, 123, 67, .12) !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  /* Row 1: clean campaign photo, true 1080×720 = 3:2. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 2 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 21px 21px 0 0 !important;
    background: #f6f8f5 !important;
    box-shadow: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media > img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-partner {
    display: none !important;
  }

  /* Row 2: all text + gallery are now in normal flow and cannot disappear. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 3 !important;
    grid-row: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 10px 12px 11px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 0 21px 21px !important;
    background: #fff !important;
    color: var(--ad-text) !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-badge,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-badge {
    position: static !important;
    display: inline-flex !important;
    align-self: flex-start !important;
    width: max-content !important;
    margin: 0 !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--ad-accent) 8%, #fff) !important;
    color: var(--ad-accent) !important;
    font-size: 8px !important;
    font-weight: 900 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-logo {
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text > b {
    color: var(--ad-heading) !important;
    font-size: 15px !important;
    font-weight: 950 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text > small {
    color: var(--ad-text) !important;
    font-size: 8px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-copy > strong {
    display: block !important;
    margin: 0 !important;
    color: var(--ad-heading) !important;
    font-size: 20px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-subtitle,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-subtitle {
    display: -webkit-box !important;
    margin: -1px 0 0 !important;
    overflow: hidden !important;
    color: var(--ad-text) !important;
    font-size: 8.5px !important;
    line-height: 1.2 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 1 !important;
  }

  /* Gallery stays inside the details row, one horizontal line, four visible. */
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    margin: auto 0 0 !important;
    padding: 0 15px !important;
    overflow: visible !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 18px) / 4) !important;
    grid-template-columns: none !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 1px 0 2px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase::-webkit-scrollbar,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase::-webkit-scrollbar {
    display: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media {
    height: 48px !important;
    border-radius: 9px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body {
    padding: 3px 1px 0 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body small {
    font-size: 5.5px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body b {
    font-size: 6.5px !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body strong {
    font-size: 6px !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-showcase-nav {
    top: 24px !important;
    width: 23px !important;
    height: 23px !important;
    font-size: 16px !important;
  }

  /* Remove the old fake blank reservation from V41.3/V41.4. */
  body.overview-page .overview-ad-carousel.has-single-ad {
    margin-bottom: 0 !important;
  }
  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-controls {
    margin-top: 10px !important;
  }
  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-progress {
    margin-top: 6px !important;
  }
}

@media (max-width: 390px) {
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    height: calc((100vw - 56px) * 0.666667 + 214px) !important;
  }
}


/* ============================================================
   MAKON BANNER V41.6 — MOBILE/TABLET PRODUCTION POLISH
   Goals:
   1) mobile photo is a clean standalone 3:2 banner with all 4 corners rounded;
   2) badge + company + title + subtitle + gallery live BELOW the photo;
   3) gallery is compact, always one row, 4 visible by default, horizontal scroll only;
   4) remove the old blank area / disappearing details problem;
   5) slightly improve tablet banner balance.
   ============================================================ */

@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel {
    width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
    background: transparent !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-stage {
    position: relative !important;
    width: 100% !important;
    height: calc((100vw - 48px) * 0.666667 + 206px) !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
    position: absolute !important;
    inset: 0 !important;
    display: grid !important;
    grid-template-rows: auto auto !important;
    align-content: start !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 2 !important;
    overflow: hidden !important;
    border: 1px solid rgba(7, 123, 67, .12) !important;
    border-radius: 22px !important;
    background: #f6f8f5 !important;
    box-shadow: 0 12px 28px rgba(18, 58, 34, .07) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media > img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-partner,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-partner {
    display: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
    position: relative !important;
    inset: auto !important;
    z-index: 3 !important;
    grid-row: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 10px 0 0 !important;
    padding: 12px 12px 12px !important;
    overflow: visible !important;
    border: 1px solid rgba(7, 123, 67, .10) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .98) !important;
    color: var(--ad-text) !important;
    box-shadow: 0 12px 26px rgba(18, 58, 34, .06) !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-badge,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-badge {
    position: static !important;
    display: inline-flex !important;
    align-self: flex-start !important;
    width: max-content !important;
    margin: 0 0 2px !important;
    padding: 5px 10px !important;
    border: 1px solid color-mix(in srgb, var(--ad-accent) 22%, transparent) !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--ad-accent) 7%, #fff) !important;
    color: var(--ad-accent) !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-logo {
    width: 46px !important;
    height: 46px !important;
    flex: 0 0 46px !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    background: #fff !important;
    box-shadow: 0 6px 18px rgba(20, 60, 34, .08) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-logo img {
    position: static !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text {
    display: grid !important;
    gap: 2px !important;
    min-width: 0 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text > b {
    overflow: hidden !important;
    color: var(--ad-heading) !important;
    font-size: 17px !important;
    font-weight: 950 !important;
    line-height: 1.05 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text > small {
    overflow: hidden !important;
    color: var(--ad-text) !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-copy > strong {
    display: block !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: var(--ad-heading) !important;
    font-size: 22px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-subtitle,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-subtitle {
    display: -webkit-box !important;
    max-width: 100% !important;
    margin: -2px 0 0 !important;
    overflow: hidden !important;
    color: var(--ad-text) !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 1 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
    padding: 0 16px !important;
    overflow: visible !important;
    background: transparent !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 18px) / 4) !important;
    grid-template-columns: none !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 2px 0 4px !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase::-webkit-scrollbar,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase::-webkit-scrollbar {
    display: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-card {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    height: auto !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    scroll-snap-align: start !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media {
    display: block !important;
    width: 100% !important;
    height: 56px !important;
    overflow: hidden !important;
    border: 1px solid rgba(18, 71, 37, .11) !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: 0 5px 13px rgba(18, 71, 37, .07) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transform: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body {
    position: static !important;
    display: grid !important;
    gap: 1px !important;
    min-width: 0 !important;
    padding: 4px 1px 0 !important;
    background: transparent !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body strong {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body small,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body small {
    color: var(--ad-text) !important;
    font-size: 6px !important;
    font-weight: 800 !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body b {
    color: var(--ad-heading) !important;
    font-size: 7px !important;
    font-weight: 900 !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body strong {
    color: var(--ad-accent) !important;
    font-size: 6.4px !important;
    font-weight: 900 !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-showcase-nav {
    top: 29px !important;
    width: 24px !important;
    height: 24px !important;
    font-size: 16px !important;
  }

  body.overview-page .overview-ad-carousel.has-single-ad {
    margin-bottom: 0 !important;
  }
  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-controls {
    margin-top: 10px !important;
  }
  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-progress {
    margin-top: 6px !important;
  }
}

@media (max-width: 390px) {
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    height: calc((100vw - 48px) * 0.666667 + 194px) !important;
  }
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-copy > strong {
    font-size: 20px !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  body.overview-page .overview-ad-carousel {
    width: calc(100% - 36px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-stage {
    aspect-ratio: 16 / 7 !important;
    min-height: 340px !important;
    max-height: 460px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media > img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media > img {
    object-fit: cover !important;
    object-position: center !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
    width: 50% !important;
    padding: 16px 18px 16px 20px !important;
    gap: 6px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-logo,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-logo {
    width: 52px !important;
    height: 52px !important;
    flex-basis: 52px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-company-text > b,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-company-text > b {
    font-size: 20px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-copy > strong,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-copy > strong {
    font-size: clamp(28px, 3.2vw, 36px) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-subtitle,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-subtitle {
    font-size: 9px !important;
    -webkit-line-clamp: 2 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell {
    width: 100% !important;
    padding: 2px 18px 0 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase {
    grid-auto-columns: calc((100% - 21px) / 4) !important;
    gap: 7px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media {
    height: 68px !important;
  }
}


/* ============================================================
   MAKON BANNER V41.7 — FINAL MOBILE/TABLET POLISH
   - remove green borders around mobile banner/photo/info
   - enlarge mobile info panel so gallery is always visible
   - gallery cards keep a stable 4:3 media ratio
   - hide left/right showcase selector arrows
   - improve tablet visibility / prevent gallery clipping
   ============================================================ */

@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel {
    width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-stage {
    position: relative !important;
    width: 100% !important;
    height: clamp(500px, calc((100vw - 56px) * 0.666667 + 276px), 620px) !important;
    min-height: 500px !important;
    max-height: none !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
    position: absolute !important;
    inset: 0 !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    align-content: start !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 2 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 24px !important;
    background: #f6f8f5 !important;
    box-shadow: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media > img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 4 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: 100% !important;
    min-height: 236px !important;
    height: auto !important;
    margin: 12px 0 0 !important;
    padding: 16px 16px 14px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 24px !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-badge,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-badge {
    margin: 0 0 2px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell {
    width: 100% !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 18px) / 4) !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 0 !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 4px !important;
    min-width: 0 !important;
    height: auto !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    scroll-snap-align: start !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    border: 1px solid rgba(18, 71, 37, .10) !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 4px 10px rgba(18, 71, 37, .05) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-body,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-body {
    display: grid !important;
    gap: 1px !important;
    padding: 0 1px !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-showcase-nav,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-nav,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-nav {
    display: none !important;
  }

  body.overview-page .overview-ad-carousel.has-single-ad {
    margin-bottom: 0 !important;
  }

  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-controls {
    margin-top: 16px !important;
  }

  body.overview-page .overview-ad-carousel.has-multiple-ads .overview-ad-progress {
    margin-top: 8px !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  body.overview-page .overview-ad-carousel {
    width: calc(100% - 40px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-stage {
    aspect-ratio: 16 / 7 !important;
    min-height: 380px !important;
    max-height: 470px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 26px !important;
    box-shadow: 0 16px 34px rgba(18, 58, 34, .06) !important;
    background: #fff !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
    border: 0 !important;
    border-radius: 26px !important;
    overflow: hidden !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    border-radius: 26px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-copy,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-copy {
    width: 46% !important;
    padding: 20px 20px 18px 22px !important;
    gap: 7px !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-shell,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-shell {
    width: 100% !important;
    margin-top: 6px !important;
    padding: 0 !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: calc((100% - 24px) / 4) !important;
    gap: 8px !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    overscroll-behavior-x: contain !important;
    scrollbar-width: none !important;
    touch-action: pan-x !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase::-webkit-scrollbar,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase::-webkit-scrollbar {
    display: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-card,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-card {
    height: auto !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 5px 12px rgba(18, 71, 37, .06) !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-product-media img,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-product-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-showcase-nav,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v40 .overview-ad-showcase-nav,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 .overview-ad-showcase-nav {
    display: none !important;
  }
}

/* ============================================================
   MAKON V42.5 — OVERVIEW BANNER + TABLET ROOM FIX
   - Overview ad is now pure image + compact company identity.
   - No lower content/gallery panel.
   - Floating assistant is removed because header owns the launcher.
   - Tablet room cards keep a professional fixed rail width.
   ============================================================ */
body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
  position: absolute !important;
  inset: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 26px !important;
  background: #eef3ed !important;
  box-shadow: none !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media,
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  border-radius: inherit !important;
  overflow: hidden !important;
}

body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-ad-media img,
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-ad-media img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Only a subtle readability gradient at the bottom. No left/bottom panel. */
body.overview-page .overview-ad-carousel .overview-hero-ad-v40 > .overview-hero-shade,
body.overview-page .overview-ad-carousel .overview-hero-ad-v41 > .overview-hero-shade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(180deg,
    rgba(5, 14, 9, .02) 0%,
    rgba(5, 14, 9, 0) 54%,
    rgba(5, 14, 9, .20) 76%,
    rgba(5, 14, 9, .58) 100%) !important;
  pointer-events: none !important;
}

/* Legacy copy/gallery is intentionally disabled if stale cached markup remains. */
body.overview-page .overview-ad-carousel :is(.overview-ad-copy, .overview-ad-showcase-shell, .overview-ad-subtitle) {
  display: none !important;
}

body.overview-page .overview-ad-carousel .overview-ad-badge {
  position: absolute !important;
  top: 18px !important;
  left: 18px !important;
  z-index: 4 !important;
  width: max-content !important;
  min-height: 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 11px !important;
  border: 1px solid rgba(255,255,255,.46) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.88) !important;
  color: #147a3d !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.12) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

body.overview-page .overview-ad-carousel .overview-ad-company-overlay {
  position: absolute !important;
  left: 18px !important;
  bottom: 18px !important;
  z-index: 4 !important;
  width: max-content !important;
  max-width: min(72%, 420px) !important;
  min-height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 7px 14px 7px 8px !important;
  border: 1px solid rgba(255,255,255,.32) !important;
  border-radius: 18px !important;
  background: rgba(12, 24, 16, .60) !important;
  color: #fff !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.18) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

body.overview-page .overview-ad-carousel .overview-ad-company-overlay .overview-ad-company-logo {
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  overflow: hidden !important;
  display: grid !important;
  place-items: center !important;
  border: 2px solid rgba(255,255,255,.82) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.overview-page .overview-ad-carousel .overview-ad-company-overlay .overview-ad-company-logo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

body.overview-page .overview-ad-carousel .overview-ad-company-overlay .overview-ad-logo-initial {
  color: #158442 !important;
  font-size: 18px !important;
  font-weight: 950 !important;
}

body.overview-page .overview-ad-carousel .overview-ad-company-overlay .overview-ad-company-text {
  min-width: 0 !important;
  display: block !important;
}

body.overview-page .overview-ad-carousel .overview-ad-company-overlay .overview-ad-company-text b {
  display: block !important;
  max-width: 320px !important;
  overflow: hidden !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.overview-page .overview-ad-carousel .overview-ad-company-overlay .overview-ad-company-text small {
  display: none !important;
}

/* Assistant is already in the compact public header. */
body.overview-page :is(.floating-voice-btn, .makon-assistant-launcher, [data-assistant-launcher]) {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Exact creative ratios: Desktop 1800x600, tablet gets a balanced crop, mobile 1080x720. */
@media (min-width: 1024px) {
  body.overview-page .overview-ad-carousel .overview-ad-stage {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 3 / 1 !important;
    border-radius: 26px !important;
    overflow: hidden !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  body.overview-page .overview-ad-carousel {
    width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-stage {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 16 / 7 !important;
    border-radius: 24px !important;
    overflow: hidden !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
    border-radius: 24px !important;
  }

  /* A single room must not stretch to the whole tablet viewport. */
  body.overview-page #overviewRooms .overview-rail,
  body.overview-page #overviewRooms .media-rail {
    display: grid !important;
    grid-template-columns: none !important;
    grid-template-rows: 1fr !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(280px, 330px) !important;
    justify-content: start !important;
    gap: 14px !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.overview-page #overviewRooms .overview-rail::-webkit-scrollbar {
    display: none !important;
  }

  body.overview-page #overviewRooms .room-card {
    width: 100% !important;
    max-width: 330px !important;
    min-width: 0 !important;
    scroll-snap-align: start !important;
  }

  body.overview-page #overviewRooms .room-card .media-wrap {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
  }

  body.overview-page #overviewRooms .room-card .media-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
}

@media (max-width: 767px) {
  body.overview-page .overview-ad-carousel {
    width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-stage {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 3 / 2 !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    background: #eef3ed !important;
  }

  body.overview-page .overview-ad-carousel .overview-hero-ad-v40,
  body.overview-page .overview-ad-carousel .overview-hero-ad-v41 {
    border-radius: 22px !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-badge {
    top: 12px !important;
    left: 12px !important;
    min-height: 26px !important;
    padding: 5px 9px !important;
    font-size: 9px !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-company-overlay {
    left: 12px !important;
    bottom: 12px !important;
    max-width: calc(100% - 24px) !important;
    min-height: 52px !important;
    gap: 8px !important;
    padding: 6px 12px 6px 7px !important;
    border-radius: 16px !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-company-overlay .overview-ad-company-logo {
    width: 40px !important;
    height: 40px !important;
    flex-basis: 40px !important;
    border-radius: 12px !important;
  }

  body.overview-page .overview-ad-carousel .overview-ad-company-overlay .overview-ad-company-text b {
    max-width: min(62vw, 250px) !important;
    font-size: 14px !important;
  }

  body.overview-page .overview-ad-carousel .overview-partner {
    top: 0 !important;
    right: 10px !important;
    transform: scale(.82) !important;
    transform-origin: top right !important;
  }
}


/* MAKON V42.6 — ONLY FIX: tablet Afisha cards match compact room cards */
@media (min-width: 768px) and (max-width: 1023px) {
  body.overview-page #overviewEvents .overview-rail,
  body.overview-page #overviewEvents .media-rail {
    display: grid !important;
    grid-template-columns: none !important;
    grid-template-rows: 1fr !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(280px, 330px) !important;
    justify-content: start !important;
    gap: 14px !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.overview-page #overviewEvents .overview-rail::-webkit-scrollbar {
    display: none !important;
  }

  body.overview-page #overviewEvents .event-card-flat {
    width: 100% !important;
    max-width: 330px !important;
    min-width: 0 !important;
    scroll-snap-align: start !important;
  }

  body.overview-page #overviewEvents .event-card-flat .media-wrap {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
  }

  body.overview-page #overviewEvents .event-card-flat .media-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
}


/* ============================================================
   MAKON V46.1 — OVERVIEW DARK THEME COMPLETENESS
   ============================================================ */
body.overview-page .overview-ad-progress { display: none !important; }

body.dark.overview-page .overview-chips a,
body.dark-theme.overview-page .overview-chips a {
  background: #2a2f2a !important;
  border-color: rgba(255,255,255,.08) !important;
  color: #edf2ed !important;
  box-shadow: none !important;
}
body.dark.overview-page .overview-chips a.active,
body.dark-theme.overview-page .overview-chips a.active,
body.dark.overview-page .overview-chips a:hover,
body.dark-theme.overview-page .overview-chips a:hover {
  background: #157f43 !important;
  border-color: #157f43 !important;
  color: #fff !important;
}

body.dark.overview-page .overview-section-head h2,
body.dark-theme.overview-page .overview-section-head h2 {
  color: #f2f5f2 !important;
}
body.dark.overview-page .overview-section-head > a,
body.dark-theme.overview-page .overview-section-head > a {
  color: #56cc78 !important;
}

body.dark.overview-page .overview-card,
body.dark-theme.overview-page .overview-card,
body.dark.overview-page .media-card,
body.dark-theme.overview-page .media-card {
  background: #232823 !important;
  border-color: rgba(255,255,255,.08) !important;
  color: #f4f7f4 !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.18) !important;
}
body.dark.overview-page .media-card strong,
body.dark-theme.overview-page .media-card strong,
body.dark.overview-page .overview-card strong,
body.dark-theme.overview-page .overview-card strong {
  color: #f4f7f4 !important;
}
body.dark.overview-page .media-card small,
body.dark-theme.overview-page .media-card small,
body.dark.overview-page .overview-card small,
body.dark-theme.overview-page .overview-card small {
  color: #b9c3bd !important;
}
body.dark.overview-page .media-wrap,
body.dark-theme.overview-page .media-wrap,
body.dark.overview-page .food-card .media-wrap,
body.dark-theme.overview-page .food-card .media-wrap,
body.dark.overview-page .car-card .media-wrap,
body.dark-theme.overview-page .car-card .media-wrap {
  background: #181c18 !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.05) !important;
}


/* ============================================================
   MAKON V47.2 — overview header/search + dark phone surfaces
   ============================================================ */
@media (min-width:720px) and (max-width:1023px) {
  body.overview-page .event-header-inner,
  body.overview-page .event-header.is-search-open .event-header-inner {
    grid-template-columns:auto minmax(70px,120px) auto minmax(190px,1fr) 42px !important;
    grid-template-areas:"brand city tablet-nav search assistant" !important;
    grid-template-rows:1fr !important;
    gap:6px !important;
  }
  body.overview-page .event-brand { grid-area:brand !important; display:flex !important; }
  body.overview-page .event-location { grid-area:city !important; display:flex !important; max-width:120px !important; }
  body.overview-page .makon-tablet-header-nav { grid-area:tablet-nav !important; display:inline-flex !important; }
  body.overview-page .event-search,
  body.overview-page .event-header.is-search-open .event-search {
    grid-area:search !important;
    grid-column:auto !important;
    grid-row:auto !important;
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    min-height:42px !important;
    margin:0 !important;
  }
  body.overview-page .event-mobile-search-toggle { display:none !important; }
  body.overview-page .event-header.is-search-open .event-header-assistant-btn { grid-column:auto !important; }
}
@media (max-width:719px) {
  body.overview-page .event-search { display:none !important; }
  body.overview-page .event-mobile-search-toggle { display:grid !important; }
  body.overview-page .event-header.is-search-open .event-search { display:flex !important; }
}
@media (max-width:540px) {
  body.dark.overview-page .events-mobile-nav,
  body.dark-theme.overview-page .events-mobile-nav,
  body.dark.overview-page .makon-bottom-nav,
  body.dark-theme.overview-page .makon-bottom-nav {
    background:#1b1f1b !important;
    border-color:rgba(255,255,255,.09) !important;
    box-shadow:0 -8px 28px rgba(0,0,0,.34) !important;
  }
  body.dark.overview-page :is(.events-mobile-nav,.makon-bottom-nav) a,
  body.dark-theme.overview-page :is(.events-mobile-nav,.makon-bottom-nav) a {
    background:transparent !important;
    color:#c9d2dc !important;
  }
  body.dark.overview-page :is(.events-mobile-nav,.makon-bottom-nav) a.active,
  body.dark-theme.overview-page :is(.events-mobile-nav,.makon-bottom-nav) a.active {
    background:#31542a !important;
    color:#b8f178 !important;
  }
}
body.dark.overview-page .event-search,
body.dark-theme.overview-page .event-search {
  background:#171a17 !important;
  border-color:rgba(255,255,255,.09) !important;
}
body.dark.overview-page .event-search input,
body.dark-theme.overview-page .event-search input { color:#eef3ee !important; background:transparent !important; }

/* ============================================================
   MAKON V49 — FINAL OVERVIEW HEADER CONTRACT
   Loaded after global_controls.css, so this block deliberately wins over the
   older V47.2 tablet grid and keeps Overview identical to the Home header.
   ============================================================ */
@media (min-width:1024px) {
  body.overview-page .event-header-inner {
    display:grid !important;
    grid-template-columns:auto minmax(95px,150px) max-content minmax(220px,1fr) 40px 40px auto !important;
    grid-template-areas:"brand city tablet-nav search map assistant theme" !important;
    align-items:center !important;
    gap:8px !important;
  }
  body.overview-page .event-brand { grid-area:brand !important; }
  body.overview-page .event-location { grid-area:city !important; min-width:0 !important; max-width:150px !important; }
  body.overview-page .makon-tablet-header-nav { grid-area:tablet-nav !important; display:inline-flex !important; justify-self:center !important; }
  body.overview-page .event-search { grid-area:search !important; display:flex !important; width:100% !important; min-width:0 !important; }
  body.overview-page .event-header-map-btn { grid-area:map !important; }
  body.overview-page .event-header-assistant-btn { grid-area:assistant !important; display:grid !important; }
  body.overview-page .event-theme { grid-area:theme !important; display:flex !important; justify-self:end !important; }
  body.overview-page .event-mobile-search-toggle { display:none !important; }
}

@media (min-width:900px) and (max-width:1023px) {
  body.overview-page .event-header-inner,
  body.overview-page .event-header.is-search-open .event-header-inner {
    display:grid !important;
    grid-template-columns:auto minmax(80px,112px) max-content minmax(140px,1fr) 40px 40px !important;
    grid-template-areas:"brand city tablet-nav search map assistant" !important;
    grid-template-rows:1fr !important;
    gap:6px !important;
  }
  body.overview-page .event-brand { grid-area:brand !important; display:flex !important; }
  body.overview-page .event-location { grid-area:city !important; display:flex !important; min-width:0 !important; max-width:112px !important; }
  body.overview-page .makon-tablet-header-nav { grid-area:tablet-nav !important; display:inline-flex !important; justify-self:center !important; }
  body.overview-page .event-search,
  body.overview-page .event-header.is-search-open .event-search { grid-area:search !important; display:flex !important; width:100% !important; min-width:0 !important; }
  body.overview-page .event-header-map-btn { grid-area:map !important; }
  body.overview-page .event-header-assistant-btn { grid-area:assistant !important; display:grid !important; }
  body.overview-page .event-theme,
  body.overview-page .event-mobile-search-toggle { display:none !important; }
}

@media (min-width:541px) and (max-width:899px) {
  body.overview-page .event-header-inner {
    display:grid !important;
    grid-template-columns:auto minmax(68px,100px) max-content 38px 38px 38px !important;
    grid-template-areas:"brand city tablet-nav search map assistant" !important;
    gap:5px !important;
  }
  body.overview-page .event-brand { grid-area:brand !important; }
  body.overview-page .event-location { grid-area:city !important; min-width:0 !important; max-width:100px !important; }
  body.overview-page .makon-tablet-header-nav { grid-area:tablet-nav !important; display:inline-flex !important; justify-self:center !important; }
  body.overview-page .event-mobile-search-toggle { grid-area:search !important; display:grid !important; }
  body.overview-page .event-header-map-btn { grid-area:map !important; }
  body.overview-page .event-header-assistant-btn { grid-area:assistant !important; display:grid !important; }
  body.overview-page .event-search,
  body.overview-page .event-theme { display:none !important; }
}

/* =====================================================================
   MAKON v123 — Partners showcase (public Overview)
   Curated partner rail: premium visual, compact, swipe-friendly.
   ===================================================================== */
body.overview-page #overviewPartners.overview-partners-showcase {
  position: relative;
  overflow: hidden;
  margin-top: 34px;
  padding: 26px 26px 22px;
  border: 1px solid rgba(26, 147, 69, .14);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 2%, rgba(111, 229, 83, .17), transparent 32%),
    linear-gradient(135deg, rgba(248,255,247,.98), rgba(242,250,246,.94) 48%, rgba(247,252,255,.98));
  box-shadow: 0 22px 58px rgba(21, 72, 41, .08);
  isolation: isolate;
}
body.overview-page #overviewPartners .overview-partners-glow {
  position: absolute;
  z-index: -1;
  pointer-events: none;
  border-radius: 999px;
  filter: blur(2px);
}
body.overview-page #overviewPartners .overview-partners-glow-a {
  width: 310px;
  height: 310px;
  right: -110px;
  top: -180px;
  background: rgba(105, 214, 70, .12);
}
body.overview-page #overviewPartners .overview-partners-glow-b {
  width: 240px;
  height: 240px;
  left: -120px;
  bottom: -160px;
  background: rgba(41, 169, 114, .08);
}
body.overview-page #overviewPartners .overview-partners-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 20px;
}
body.overview-page #overviewPartners .overview-partners-heading-copy {
  min-width: 0;
}
body.overview-page #overviewPartners .overview-partners-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 7px;
  color: #168143;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .075em;
  text-transform: uppercase;
}
body.overview-page #overviewPartners .overview-partners-eyebrow i {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 8px;
  background: #e4f8e5;
  color: #15a14f;
  font-style: normal;
  font-size: 11px;
}
body.overview-page #overviewPartners .overview-partners-head h2 {
  margin: 0;
  color: #132238;
  font-size: clamp(25px, 2.1vw, 34px);
  line-height: 1.06;
  letter-spacing: -.025em;
}
body.overview-page #overviewPartners .overview-partners-head h2 span {
  color: #159447;
}
body.overview-page #overviewPartners .overview-partners-head p {
  max-width: 690px;
  margin: 8px 0 0;
  color: #718078;
  font-size: 13px;
  line-height: 1.5;
}
body.overview-page #overviewPartners .overview-partners-controls {
  display: flex;
  gap: 8px;
  flex: 0 0 auto;
}
body.overview-page #overviewPartners .overview-partners-controls button {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid rgba(23, 111, 52, .11);
  border-radius: 14px;
  background: rgba(255,255,255,.86);
  color: #17452a;
  box-shadow: 0 8px 22px rgba(27, 88, 46, .06);
  font: 900 18px/1 system-ui, sans-serif;
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
body.overview-page #overviewPartners .overview-partners-controls button:hover {
  transform: translateY(-2px);
  background: #fff;
  box-shadow: 0 12px 28px rgba(27, 88, 46, .11);
}
body.overview-page #overviewPartners .overview-partners-rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 224px;
  gap: 14px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 2px 2px 10px;
  scroll-snap-type: x proximity;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}
body.overview-page #overviewPartners .overview-partners-rail::-webkit-scrollbar { display: none; }
body.overview-page #overviewPartners .overview-partner-card {
  position: relative;
  display: grid;
  grid-template-rows: 152px 1fr;
  min-height: 258px;
  overflow: hidden;
  scroll-snap-align: start;
  border: 1px solid rgba(29, 88, 48, .10);
  border-radius: 20px;
  background: rgba(255,255,255,.95);
  color: inherit;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(24, 76, 41, .07);
  transform: translateZ(0);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
body.overview-page #overviewPartners .overview-partner-card:hover {
  transform: translateY(-5px);
  border-color: rgba(20, 159, 70, .20);
  box-shadow: 0 20px 42px rgba(24, 76, 41, .13);
}
body.overview-page #overviewPartners .overview-partner-media {
  position: relative;
  display: block;
  overflow: hidden;
  background: linear-gradient(145deg,#edf6ee,#e6f0e8);
}
body.overview-page #overviewPartners .overview-partner-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .35s ease;
}
body.overview-page #overviewPartners .overview-partner-card:hover .overview-partner-media img {
  transform: scale(1.035);
}
body.overview-page #overviewPartners .overview-partner-media::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 42%;
  background: linear-gradient(180deg, transparent, rgba(7,43,22,.18));
  pointer-events: none;
}
body.overview-page #overviewPartners .overview-partner-media-shine {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 0 45%, rgba(255,255,255,.18) 50%, transparent 55% 100%);
  transform: translateX(-120%);
  transition: transform .6s ease;
}
body.overview-page #overviewPartners .overview-partner-card:hover .overview-partner-media-shine {
  transform: translateX(120%);
}
body.overview-page #overviewPartners .overview-partner-badge {
  position: absolute;
  z-index: 2;
  top: 11px;
  left: 11px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: calc(100% - 22px);
  padding: 6px 9px 6px 7px;
  border: 1px solid rgba(255,255,255,.74);
  border-radius: 999px;
  background: rgba(232,255,231,.92);
  color: #0a7a39;
  box-shadow: 0 6px 18px rgba(19, 85, 40, .10);
  backdrop-filter: blur(8px);
  font-size: 10px;
  font-weight: 900;
}
body.overview-page #overviewPartners .overview-partner-badge i {
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #16a34a;
  color: #fff;
  font-style: normal;
  font-size: 10px;
}
body.overview-page #overviewPartners .overview-partner-copy {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  padding: 15px 16px 16px;
}
body.overview-page #overviewPartners .overview-partner-copy strong {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #17241d;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.26;
}
body.overview-page #overviewPartners .overview-partner-city {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  color: #66766c;
  font-size: 11px;
  font-weight: 700;
}
body.overview-page #overviewPartners .overview-partner-city i {
  color: #22a055;
  font-style: normal;
  font-size: 7px;
}
body.overview-page #overviewPartners .overview-partner-copy small {
  overflow: hidden;
  color: #94a099;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
}
body.overview-page #overviewPartners .overview-partner-arrow {
  position: absolute;
  right: 13px;
  bottom: 13px;
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border-radius: 10px;
  background: #eff8ef;
  color: #168d46;
  font-size: 15px;
  font-weight: 900;
  transition: transform .2s ease, background .2s ease;
}
body.overview-page #overviewPartners .overview-partner-card:hover .overview-partner-arrow {
  transform: translate(2px,-2px);
  background: #dbf5df;
}
body.overview-page #overviewPartners .overview-partner-values {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-top: 14px;
  padding: 11px;
  border: 1px solid rgba(30, 114, 54, .08);
  border-radius: 18px;
  background: rgba(255,255,255,.68);
}
body.overview-page #overviewPartners .overview-partner-values > span {
  display: grid;
  grid-template-columns: 34px 1fr;
  grid-template-rows: auto auto;
  column-gap: 9px;
  min-width: 0;
  padding: 8px 9px;
  border-radius: 13px;
}
body.overview-page #overviewPartners .overview-partner-values i {
  grid-row: 1 / 3;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 11px;
  background: #edf9e8;
  color: #168d46;
  font-style: normal;
  font-size: 13px;
  font-weight: 900;
}
body.overview-page #overviewPartners .overview-partner-values b {
  min-width: 0;
  overflow: hidden;
  color: #284134;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
  line-height: 1.2;
}
body.overview-page #overviewPartners .overview-partner-values small {
  min-width: 0;
  overflow: hidden;
  color: #859189;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 9px;
  line-height: 1.2;
}

body.dark.overview-page #overviewPartners.overview-partners-showcase,
body.dark-theme.overview-page #overviewPartners.overview-partners-showcase {
  border-color: rgba(91, 199, 111, .14);
  background: radial-gradient(circle at 86% 0, rgba(57, 143, 74, .16), transparent 34%), linear-gradient(135deg,#17231b,#151e18 60%,#18211c);
  box-shadow: 0 22px 56px rgba(0,0,0,.24);
}
body.dark.overview-page #overviewPartners .overview-partners-head h2,
body.dark-theme.overview-page #overviewPartners .overview-partners-head h2 { color:#f1f7f2; }
body.dark.overview-page #overviewPartners .overview-partners-head p,
body.dark-theme.overview-page #overviewPartners .overview-partners-head p { color:#91a097; }
body.dark.overview-page #overviewPartners .overview-partner-card,
body.dark-theme.overview-page #overviewPartners .overview-partner-card { background:#1e2a22; border-color:rgba(113,193,125,.12); box-shadow:0 12px 28px rgba(0,0,0,.22); }
body.dark.overview-page #overviewPartners .overview-partner-copy strong,
body.dark-theme.overview-page #overviewPartners .overview-partner-copy strong { color:#eff6f0; }
body.dark.overview-page #overviewPartners .overview-partner-values,
body.dark-theme.overview-page #overviewPartners .overview-partner-values { background:rgba(255,255,255,.035); border-color:rgba(105,190,120,.10); }
body.dark.overview-page #overviewPartners .overview-partner-values b,
body.dark-theme.overview-page #overviewPartners .overview-partner-values b { color:#d8e6db; }
body.dark.overview-page #overviewPartners .overview-partners-controls button,
body.dark-theme.overview-page #overviewPartners .overview-partners-controls button { background:#223027; color:#d4e8d8; border-color:rgba(99,186,114,.12); }

@media (max-width: 1024px) {
  body.overview-page #overviewPartners.overview-partners-showcase { padding:22px 20px 18px; border-radius:24px; }
  body.overview-page #overviewPartners .overview-partners-rail { grid-auto-columns:210px; }
  body.overview-page #overviewPartners .overview-partner-values { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  body.overview-page #overviewPartners.overview-partners-showcase {
    margin-top: 26px;
    margin-inline: 0;
    padding: 20px 14px 15px;
    border-radius: 22px;
  }
  body.overview-page #overviewPartners .overview-partners-head { align-items:flex-start; gap:12px; margin-bottom:15px; }
  body.overview-page #overviewPartners .overview-partners-head h2 { font-size:25px; }
  body.overview-page #overviewPartners .overview-partners-head p { max-width:92%; font-size:12px; }
  body.overview-page #overviewPartners .overview-partners-eyebrow { font-size:9px; }
  body.overview-page #overviewPartners .overview-partners-controls { display:none; }
  body.overview-page #overviewPartners .overview-partners-rail {
    grid-auto-columns: min(72vw, 218px);
    gap:11px;
    margin-inline:-14px;
    padding:2px 14px 9px;
    scroll-padding-inline:14px;
  }
  body.overview-page #overviewPartners .overview-partner-card { grid-template-rows:142px 1fr; min-height:245px; border-radius:18px; }
  body.overview-page #overviewPartners .overview-partner-values { grid-template-columns:1fr 1fr; padding:8px; gap:5px; }
  body.overview-page #overviewPartners .overview-partner-values > span { grid-template-columns:30px 1fr; padding:6px; column-gap:7px; }
  body.overview-page #overviewPartners .overview-partner-values i { width:30px; height:30px; border-radius:10px; }
  body.overview-page #overviewPartners .overview-partner-values small { display:none; }
}
@media (max-width: 430px) {
  body.overview-page #overviewPartners .overview-partners-head p { max-width:100%; }
  body.overview-page #overviewPartners .overview-partner-values { grid-template-columns:1fr; }
  body.overview-page #overviewPartners .overview-partner-values > span:nth-child(n+4) { display:none; }
  body.overview-page #overviewPartners .overview-partner-values b { font-size:10px; }
}
