/**
 * Gateway static overrides: banner under transparent header, slideshow, cycling text.
 * Load after site.css so these rules win.
 * Safari (macOS + iOS): viewport, -webkit- prefixes, safe-area, and JS are compatible.
 */

/* ----- Safari / iOS: safe area for notched devices ----- */
@supports (padding: env(safe-area-inset-top)) {
  .mobile-bar-wrapper {
    padding-top: max(0px, env(safe-area-inset-top)) !important;
    padding-left: max(1rem, env(safe-area-inset-left)) !important;
    padding-right: max(1rem, env(safe-area-inset-right)) !important;
  }
  #footer.bmf-unified-footer .bmf-footer-inner {
    padding-left: max(1.5rem, env(safe-area-inset-left)) !important;
    padding-right: max(1.5rem, env(safe-area-inset-right)) !important;
  }
  .bmf-footer-main {
    padding-bottom: max(1.5rem, env(safe-area-inset-bottom)) !important;
  }
}

/* ----- Hide tagline "Made To Inspire" next to logo (homepage + About, Contact, Service pages) ----- */
body.homepage .site-tagline-wrapper,
body.homepage .site-tagline,
body[data-page-name="home"] .site-tagline-wrapper,
body[data-page-name="home"] .site-tagline,
body[data-page-name="about"] .site-tagline-wrapper,
body[data-page-name="about"] .site-tagline,
body[data-page-name="contact"] .site-tagline-wrapper,
body[data-page-name="contact"] .site-tagline,
body[data-page-name="experiential"] .site-tagline-wrapper,
body[data-page-name="experiential"] .site-tagline,
body[data-page-name="public-relations"] .site-tagline-wrapper,
body[data-page-name="public-relations"] .site-tagline,
body[data-page-name="digital"] .site-tagline-wrapper,
body[data-page-name="digital"] .site-tagline,
body[data-page-name="strategy-creative"] .site-tagline-wrapper,
body[data-page-name="strategy-creative"] .site-tagline,
body[data-page-name="international"] .site-tagline-wrapper,
body[data-page-name="international"] .site-tagline,
body[data-page-name="virtual-events"] .site-tagline-wrapper,
body[data-page-name="virtual-events"] .site-tagline,
body[data-page-name="savage-x-fenty"] .site-tagline-wrapper,
body[data-page-name="savage-x-fenty"] .site-tagline,
body[data-page-name="amazon-prime-video"] .site-tagline-wrapper,
body[data-page-name="amazon-prime-video"] .site-tagline {
  display: none !important;
}
/* Homepage + About/Services/Contact/Case studies: put nav on the right */
body.homepage #header [data-nc-container="left"],
body[data-page-name="home"] #header [data-nc-container="left"],
body[data-page-name="about"] #header [data-nc-container="left"],
body[data-page-name="contact"] #header [data-nc-container="left"],
body[data-page-name="experiential"] #header [data-nc-container="left"],
body[data-page-name="public-relations"] #header [data-nc-container="left"],
body[data-page-name="digital"] #header [data-nc-container="left"],
body[data-page-name="strategy-creative"] #header [data-nc-container="left"],
body[data-page-name="international"] #header [data-nc-container="left"],
body[data-page-name="virtual-events"] #header [data-nc-container="left"],
body[data-page-name="savage-x-fenty"] #header [data-nc-container="left"],
body[data-page-name="amazon-prime-video"] #header [data-nc-container="left"] {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}
body.homepage #header .primary-nav-wrapper,
body[data-page-name="home"] #header .primary-nav-wrapper,
body[data-page-name="about"] #header .primary-nav-wrapper,
body[data-page-name="contact"] #header .primary-nav-wrapper,
body[data-page-name="experiential"] #header .primary-nav-wrapper,
body[data-page-name="public-relations"] #header .primary-nav-wrapper,
body[data-page-name="digital"] #header .primary-nav-wrapper,
body[data-page-name="strategy-creative"] #header .primary-nav-wrapper,
body[data-page-name="international"] #header .primary-nav-wrapper,
body[data-page-name="virtual-events"] #header .primary-nav-wrapper,
body[data-page-name="savage-x-fenty"] #header .primary-nav-wrapper,
body[data-page-name="amazon-prime-video"] #header .primary-nav-wrapper {
  margin-left: auto !important;
}
@media (max-width: 768px) {
  body.homepage .mobile-site-tagline,
  body[data-page-name="home"] .mobile-site-tagline,
  body[data-page-name="about"] .mobile-site-tagline,
  body[data-page-name="contact"] .mobile-site-tagline,
  body[data-page-name="experiential"] .mobile-site-tagline,
  body[data-page-name="public-relations"] .mobile-site-tagline,
  body[data-page-name="digital"] .mobile-site-tagline,
  body[data-page-name="strategy-creative"] .mobile-site-tagline,
  body[data-page-name="international"] .mobile-site-tagline,
  body[data-page-name="virtual-events"] .mobile-site-tagline,
  body[data-page-name="savage-x-fenty"] .mobile-site-tagline,
  body[data-page-name="amazon-prime-video"] .mobile-site-tagline {
    display: none !important;
  }
}

/* ----- Case study single pages: content blocks styled like service pages ----- */
body:has(#indexNext) #content.content-container,
body:has(#indexNext) .content-container {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}
body:has(#indexNext) .main-content .sqs-layout.sqs-grid-12[data-type="page"] {
  /* max-width: 1200px !important; */
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body:has(#indexNext) .main-content .sqs-block-html .sqs-block-content,
body:has(#indexNext) .main-content .sqs-block-markdown .sqs-block-content {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}
body:has(#indexNext) .main-content .sqs-html-content h3,
body:has(#indexNext) .main-content .sqs-block-markdown h3 {
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #000 !important;
  text-transform: uppercase !important;
  font-family: Lato, sans-serif !important;
  letter-spacing: 0.3em !important;
  margin: 1.5rem 0 0.75rem 0 !important;
  padding: 0 !important;
  line-height: 1.3 !important;
}
body:has(#indexNext) .main-content .sqs-html-content h3:first-child,
body:has(#indexNext) .main-content .sqs-block-markdown h3:first-child {
  margin-top: 0 !important;
}
body:has(#indexNext) .main-content .sqs-html-content p,
body:has(#indexNext) .main-content .sqs-block-markdown p {
  margin: 0 0 1rem 0 !important;
  line-height: 1.6 !important;
  color: #333 !important;
}
body:has(#indexNext) .main-content .sqs-block-horizontalrule .sqs-block-content {
  margin: 1.5rem 0 !important;
}
body:has(#indexNext) .main-content .sqs-block-horizontalrule hr {
  border: none !important;
  border-top: 1px solid #e0e0e0 !important;
}
@media (max-width: 767px) {
  body:has(#indexNext) #content.content-container,
  body:has(#indexNext) .content-container {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

/* ----- Case study prev/next navigation (above Stay Inspired) ----- */
body:has(#indexNext) #indexNext,
body:has(#indexNext) #indexNav {
  margin-top: 2.5rem !important;
  margin-bottom: 0 !important;
}
body:has(#indexNext) #indexNav.hide {
  display: block !important;
}
/* Keep the data list hidden; we only use it for prev/next URLs in JS */
body:has(#indexNext) #indexNext {
  display: none !important;
}
.bmf-case-study-nav-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  max-width: 1200px;
  margin: 2.5rem auto 0;
  padding: 0 1.5rem 1.25rem;
  border-bottom: 1px solid #e8e4e0;
  text-align: center;
}
.bmf-case-study-nav-prevnext {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  align-items: center;
}
.bmf-case-study-nav-prev,
.bmf-case-study-nav-next {
  font-size: 1.0625rem;
  font-family: Lato, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  text-decoration: none;
  line-height: 1.5;
  letter-spacing: 0.01em;
  transition: opacity 0.2s;
}
.bmf-case-study-nav-prev .bmf-case-study-nav-label,
.bmf-case-study-nav-next .bmf-case-study-nav-label {
  color: #F2C84B;
  font-weight: 600;
}
.bmf-case-study-nav-prev,
.bmf-case-study-nav-next {
  color: #000;
}
.bmf-case-study-nav-prev[aria-disabled="true"],
.bmf-case-study-nav-next[aria-disabled="true"] {
  color: #999;
  cursor: default;
}
.bmf-case-study-nav-prev:not([aria-disabled="true"]):hover,
.bmf-case-study-nav-next:not([aria-disabled="true"]):hover {
  opacity: 0.85;
}
body:has(#indexNext) .index-navigation {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  flex: 1 1 auto;
  justify-content: center;
  min-width: 0;
}
body:has(#indexNext) .index-navigation .index-nav-link {
  display: inline-block;
  white-space: nowrap;
  font-size: 0.95rem;
  color: #666;
  text-decoration: none;
  padding: 0.25em 0;
  border-bottom: 2px solid transparent;
  transition: color 0.2s, border-color 0.2s;
}
body:has(#indexNext) .index-navigation .index-nav-link:hover {
  color: #333;
}
body:has(#indexNext) .index-navigation .index-nav-link.active-link {
  color: #000;
  font-weight: 600;
  border-bottom-color: #c9a227;
}
body:has(#indexNext) .index-navigation .index-all-link {
  font-weight: 600;
  color: #0d9488;
}
body:has(#indexNext) .index-navigation .index-all-link:hover {
  color: #0f766e;
}
@media (max-width: 767px) {
  .bmf-case-study-nav-wrap {
    padding-left: 1rem;
    padding-right: 1rem;
    margin-top: 1.5rem;
  }
  body:has(#indexNext) .index-navigation {
    justify-content: flex-start;
  }
}
/* ----- Case study single pages: show tiles below prev/next and match service page case study block styles ----- */
body:has(#indexNext) .main-content .collection-type-index.index-item-width-grid {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 2rem 0 0 !important;
  padding: 0 !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: none !important;
  background: #0a0a0a !important;
  background-color: #0a0a0a !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-list .index-section {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  background: #0a0a0a !important;
  background-color: #0a0a0a !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-link {
  display: block !important;
  width: 100% !important;
  position: relative !important;
  padding-bottom: 75% !important;
  height: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-image-wrapper {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-image-wrapper .index-item-image,
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-image-wrapper .custom-fallback-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  opacity: 1 !important;
  filter: none !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-link:hover .index-item-image-wrapper .index-item-image,
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-link:hover .index-item-image-wrapper .custom-fallback-image {
  transform: scale(1.05) !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item.has-item-video .sqs-video-background {
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
  width: 100% !important; height: 100% !important; min-height: 0 !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-text-wrapper {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 1.5rem 1.75rem !important;
  background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.35) 50%, transparent 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: flex-start !important;
  transition: background 0.35s ease !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-link:hover .index-item-text-wrapper {
  background: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0.2)) !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-title {
  margin: 0 !important;
  padding: 0 !important;
}
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-title a,
body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-title-text {
  color: #fff !important;
  font-family: 'Great Vibes', cursive !important;
  font-size: 1.5rem !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.5) !important;
  text-decoration: none !important;
}
@media (max-width: 767px) {
  body:has(#indexNext) .main-content .collection-type-index .index-list {
    grid-template-columns: 1fr !important;
  }
  body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-title a,
  body:has(#indexNext) .main-content .collection-type-index .index-item .index-item-title-text {
    font-size: 1.25rem !important;
  }
}

/* ----- Case studies: match BMF – dark strip only for grid, rest of page white ----- */
/* Dark background only on the case studies grid strip (not body, not #content) */
body.collection-type-index .main-content:has(.index-list),
body.view-list .main-content:has(.index-list),
body.collection-type-index .index-list,
body.view-list .index-list,
.index-list .index-section,
.main-content .index-item {
  background-color: #0a0a0a !important;
  background: #0a0a0a !important;
}
/* Don't override the grid strip to transparent */
.sqs-layout:has(.index-list),
.sqs-block-content:has(.index-list) {
  background-color: transparent !important;
  background: transparent !important;
}
/* Case studies grid: boxed within content width (not full-bleed) */
body.collection-type-index .main-content:has(.index-list),
body.view-list .main-content:has(.index-list) {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
/* BMF-style grid: 3 columns, full width, no gaps */
body.collection-type-index .index-list,
body.view-list .index-list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
  width: 100% !important;
}
body.collection-type-index .index-list .index-section,
body.view-list .index-list .index-section {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.index-item .index-item-image-wrapper .index-item-image {
  opacity: 1 !important;
}
/* Remove any theme overlay/tint on case study blocks (match BMF – images show clear) */
.main-content .index-item::before,
.main-content .index-item::after,
.main-content .index-item .index-item-link::before,
.main-content .index-item .index-item-link::after,
.main-content .index-item .index-item-image-wrapper::before,
.main-content .index-item .index-item-image-wrapper::after,
.main-content .index-item .sqs-video-background::before,
.main-content .index-item .sqs-video-background::after {
  display: none !important;
  background: none !important;
}
.main-content .index-item .index-item-link,
.main-content .index-item .index-item-image-wrapper {
  background-color: transparent !important;
  background: transparent !important;
}
.main-content .index-item .index-item-image-wrapper .index-item-image,
.main-content .index-item .index-item-image-wrapper .custom-fallback-image {
  filter: none !important;
}
.main-content .index-item {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  background-color: #0a0a0a !important;
  background: #0a0a0a !important;
}
.main-content .index-item .index-item-link {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  background: transparent !important;
}

/* Aspect ratio: match BMF index block height (4:3 like wearebmf.com) */
.main-content .index-item .index-item-link.intrinsic {
  position: relative !important;
  padding-bottom: 75% !important; /* 4:3 */
  height: 0 !important;
  overflow: hidden !important;
}

.collection-type-index.index-item-width-grid .intrinsic {
  padding-bottom: 0;
  line-height: 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.main-content .index-item .index-item-image-wrapper {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background-color: transparent !important;
  background: transparent !important;
}
.main-content .index-item .index-item-image-wrapper .index-item-image,
.main-content .index-item .index-item-image-wrapper .custom-fallback-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 0 !important;
  transition: transform 0.45s ease !important;
}
/* Hover: subtle zoom like wearebmf.com */
.main-content .index-item .index-item-link:hover .index-item-image-wrapper .index-item-image,
.main-content .index-item .index-item-link:hover .index-item-image-wrapper .custom-fallback-image {
  transform: scale(1.05) !important;
}
.main-content .index-item .index-item-link:hover .index-item-text-wrapper {
  background: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0.2)) !important;
}
.main-content .index-item.has-item-video .sqs-video-background {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}
.main-content .index-item.has-item-video .sqs-video-background .custom-fallback-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  z-index: 0 !important;
}
/* Case Studies heading: match Capabilities style */
body.collection-type-index .collection-header .col .sqs-block-html:nth-child(6) .sqs-html-content h3,
body.view-list .collection-header .col .sqs-block-html:nth-child(6) .sqs-html-content h3 {
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-transform: none !important;
  color: inherit !important;
  margin: 0 0 1rem 0 !important;
  padding: 0 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #000 !important;
  text-transform: uppercase !important;
  font-family: Lato, sans-serif !important;
  letter-spacing: 0.3em !important;
}
/* Spacing above case studies grid (match BMF) */
body.collection-type-index .main-content .index-list,
body.view-list .main-content .index-list {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  background: #fff !important;
}
/* Title overlay: full width and full height of each block, gradient over entire area */
.main-content .index-item .index-item-text-wrapper {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 1.5rem 1.75rem !important;  /* 24px 28px */
  line-height: 1.25 !important;
  background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.35) 50%, transparent 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
  transition: background 0.35s ease !important;
  display: flex !important;
  align-items: flex-start !important;
}
.main-content .index-item .index-item-title {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}
.main-content .index-item .index-item-title a,
.main-content .index-item .index-item-title-text {
  color: #fff !important;
  font-family: 'Great Vibes', cursive !important;
  font-size: 1.5rem !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.5) !important;
  text-decoration: none !important;
}
@media (min-width: 768px) {
  .main-content .index-item .index-item-title a,
  .main-content .index-item .index-item-title-text {
    font-size: clamp(1.375rem, 2.2vw, 1.75rem) !important;
    font-size: 1.12em !important;
  }
}
@media (max-width: 767px) {
  body.collection-type-index .index-list,
  body.view-list .index-list {
    grid-template-columns: 1fr !important;
  }
  .main-content .index-item .index-item-link.intrinsic {
    padding-bottom: 75% !important;
  }
  .main-content .index-item .index-item-title a,
  .main-content .index-item .index-item-title-text {
    font-size: 1.25rem !important;
  }
}

/* About: "We Are Cultural Engineers" header font */
body[data-page-name="about"] .abouth1 {
  font-family: "Portrait Web", Georgia, serif !important;
  font-weight: 500 !important;
  font-size: clamp(1.75rem, 4vw, 2.5rem) !important;
  letter-spacing: 0.02em !important;
}

/* International: reduce gap between Regions/capabilities and index list; clean India/case study images */
body[data-page-name="international"] .main-content,
body[data-page-name="international"] .index-list {
  margin-top: 0 !important;
}
body[data-page-name="international"] .sqs-layout + .main-content,
body[data-page-name="international"] .capabilities-grid + * {
  margin-top: 1.5rem !important;
}
body[data-page-name="international"] #index-section-india .index-item-image-wrapper .index-item-image {
  opacity: 1 !important;
  object-fit: cover !important;
}

/* ----- Global: prevent horizontal overflow (responsive) ----- */
html,
body {
  overflow-x: hidden !important;
  -webkit-text-size-adjust: 100%;
}
.overflow-wrapper {
  overflow-x: hidden !important;
}
#content.content-container,
.content-container {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* ----- Layout: center site, full-width content, prevent off-center and cut-off text ----- */
.overflow-wrapper {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}
#site.site-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}
#content.content-container {
  width: 100% !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}
#page.site-page,
.main-content {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
.sqs-layout.sqs-grid-12,
.sqs-layout .sqs-row {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
.sqs-layout > .sqs-row {
  margin-left: 0 !important;
}
/* Prevent headings and paragraphs from being clipped (safe inner padding) */
.sqs-block-content,
.sqs-html-content {
  box-sizing: border-box !important;
  overflow: visible !important;
}
/* Homepage banner text: keep visible and not clipped */
.homepage-banner-text {
  box-sizing: border-box !important;
  overflow: visible !important;
  max-width: 100% !important;
}
/* Page title/description (e.g. "Home", intro paragraph) – ensure not clipped */
.page-text-wrapper .page-title,
.page-text-wrapper .page-description {
  overflow: visible !important;
  max-width: 100% !important;
}

/* Hide .font-northwell yellow underline (::after) */
.font-northwell::after {
  display: none !important;
}

/* Discover More links: green/teal color (landing page) */
.what-we-do-block .discover-more-link,
.what-we-do-grid .discover-more-link,
.font-northwell.discover-more-link {
  color: #0d9488 !important;
}
.what-we-do-block .discover-more-link:hover,
.what-we-do-grid .discover-more-link:hover {
  color: #0f766e !important;
}

/* Yellow line under nav: only show under Contact when on Contact page */
.site-navigation .nav-item.collection.active a,
.site-navigation .nav-item.collection.active .nav-item-page {
  border-bottom: none !important;
  box-shadow: none !important;
}
.site-navigation .nav-item.collection.active a::after,
.site-navigation .nav-item.collection.active .nav-item-page::after {
  display: none !important;
}
body[data-page-name="contact"] .site-navigation .nav-item#id-64c2e74c0e8f65017f2a77fb.active a,
body[data-page-name="contact"] .site-navigation .nav-item#id-64c2e74c0e8f65017f2a77fb.active .nav-item-page {
  border-bottom: 2px solid #c9a227 !important;
}

/* Banner page title: left-align, remove center/auto margin */
.collection-type-album.show-album-banner.banner-text-alignment-center .page-text-wrapper .page-title,
.collection-type-blog.view-list.show-blog-banner.banner-text-alignment-center .page-text-wrapper .page-title,
.collection-type-events.view-list.show-events-banner.banner-text-alignment-center .page-text-wrapper .page-title,
.collection-type-gallery.show-gallery-banner.banner-text-alignment-center .page-text-wrapper .page-title,
.collection-type-index.show-index-banner.banner-text-alignment-center .page-text-wrapper .page-title,
.collection-type-page.show-page-banner.banner-text-alignment-center .page-text-wrapper .page-title,
.collection-type-project.show-project-banner.banner-text-alignment-center .page-text-wrapper .page-title,
.collection-type-products.view-list.show-products-banner.banner-text-alignment-center .page-text-wrapper .page-title,
.homepage.show-homepage-banner.banner-text-alignment-center .page-text-wrapper .page-title {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: auto !important;
}
/* Safe horizontal padding so text/headers are never cut off at edges (all viewports) */
#content.content-container {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}
.main-content .sqs-block-content {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.homepage-banner-text {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

/* Header logo size (desktop) — footer uses same size */
#header .logo-image img {
  height: 54px !important;
  max-height: 54px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* ----- Mobile: burger icon + drawer menu (max-width 768px) ----- */
@media (max-width: 768px) {
  /* Hide desktop header and nav on all pages (index, contact, etc.) */
  #header.site-header,
  header.site-header,
  .overflow-wrapper > #header,
  .overflow-wrapper #header,
  #site .site-header,
  .site-container > header,
  .site-container header#header {
    display: none !important;
  }
  /* Hide desktop primary nav if any rule shows it */
  #mainNavWrapper,
  .primary-nav-wrapper,
  .site-navigation {
    display: none !important;
  }

  /* Mobile bar: fixed top, visible, with logo + burger (Safari iOS: backface for stable fixed) */
  .mobile-bar-wrapper {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 56px !important;
    padding: 0 1rem !important;
    z-index: 9999 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
    box-sizing: border-box !important;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .mobile-bar-flex-child {
    display: none !important;
  }
  .mobile-branding-wrapper {
    display: flex !important;
    align-items: center;
    gap: 0.5rem;
  }
  .mobile-logo-image a {
    display: block;
  }
  .mobile-logo-image img {
    height: 54px !important;
    width: auto !important;
    max-height: 54px !important;
  }
  .mobile-site-tagline {
    display: block !important;
    font-size: 0.85rem !important;
    color: #333 !important;
  }

  /* Burger button: visible, tappable */
  .mobile-nav-toggle-label {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    border: none !important;
    background: transparent !important;
    -webkit-tap-highlight-color: transparent;
  }
  .mobile-nav-toggle-label .Icon--hamburger,
  .mobile-nav-toggle-label .Icon--close {
    width: 24px !important;
    height: 24px !important;
    display: block !important;
  }
  .mobile-nav-toggle-label .Icon--close {
    display: none !important;
  }
  /* Burger and close icon: black so always visible */
  .mobile-nav-toggle-label .Icon,
  .mobile-nav-toggle-label .Icon use,
  .mobile-bar-wrapper .mobile-nav-toggle-label svg,
  .mobile-bar-wrapper .mobile-nav-toggle-label svg use {
    stroke: #000000 !important;
    stroke-width: 2 !important;
    fill: none !important;
    color: #000 !important;
  }
  .mobile-nav-toggle-label .Icon--hamburger line,
  .mobile-nav-toggle-label .Icon--close line {
    stroke: #000000 !important;
    stroke-width: 2 !important;
  }
  #mobileNavToggle:checked ~ .mobile-bar-wrapper .mobile-nav-toggle-label .Icon--hamburger,
  body.mobile-nav-open .mobile-bar-wrapper .mobile-nav-toggle-label .Icon--hamburger {
    display: none !important;
  }
  #mobileNavToggle:checked ~ .mobile-bar-wrapper .mobile-nav-toggle-label .Icon--close,
  body.mobile-nav-open .mobile-bar-wrapper .mobile-nav-toggle-label .Icon--close {
    display: block !important;
  }

  /* Drawer overlay: full-screen, opaque backdrop when open */
  .overlay-nav-container {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100vh !important;
    z-index: 99999 !important;
    background-color: rgba(0, 0, 0, 0.55) !important;
    background-image: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: visibility 0.25s ease, opacity 0.25s ease !important;
    overflow-y: auto !important;
    display: block !important;
    -webkit-overflow-scrolling: touch;
  }
  #mobileNavToggle:checked ~ .overlay-nav-container,
  body.mobile-nav-open .overlay-nav-container {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .overlay-nav-wrapper {
    display: flex !important;
    justify-content: center;
    align-items: flex-start;
    min-height: 100%;
    padding: 70px 1.5rem 2rem !important;
    box-sizing: border-box !important;
    background: transparent !important;
  }
  /* Menu panel: solid white, always visible (override any transparent inheritance) */
  .mobile-primary-nav-wrapper {
    width: 100% !important;
    max-width: 320px !important;
    background-color: #ffffff !important;
    background-image: none !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2) !important;
    padding: 1.5rem !important;
    opacity: 1 !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-sizing: border-box !important;
  }
  .mobile-primary-nav-links {
    background-color: transparent !important;
  }
  .mobile-primary-nav-links a,
  .mobile-primary-nav-links .folder-toggle-label {
    display: block !important;
    padding: 0.75rem 0 !important;
    font-size: 1.1rem !important;
    color: #111 !important;
    text-decoration: none !important;
    border-bottom: 1px solid #eee !important;
  }
  .mobile-primary-nav-links .folder-link:last-child a,
  .mobile-primary-nav-links .folder:last-child .folder-toggle-label {
    border-bottom: none !important;
  }
  .mobile-primary-nav-links .subnav {
    padding-left: 1rem !important;
    padding-bottom: 0.5rem !important;
  }
  .mobile-primary-nav-links .subnav a {
    font-size: 1rem !important;
    color: #333 !important;
    border-bottom: none !important;
  }
  .mobile-primary-nav-links .folder .folder-toggle-box:checked ~ .subnav {
    display: block !important;
  }
  .mobile-primary-nav-links .folder .subnav {
    display: none !important;
  }
  .mobile-primary-nav-links .folder-toggle-label svg {
    transition: transform 0.2s ease;
  }
  .mobile-primary-nav-links .folder .folder-toggle-box:checked ~ .folder-toggle-label svg {
    transform: rotate(90deg);
  }

  /* Prevent content from sitting under fixed mobile bar (all pages including homepage) */
  body {
    padding-top: 56px !important;
  }
  .homepage .mobile-bar-wrapper {
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
  }
  .homepage .mobile-nav-toggle-label .Icon use,
  .homepage .mobile-nav-toggle-label .Icon line {
    stroke: #000 !important;
  }
  .homepage .mobile-site-tagline {
    color: #333 !important;
  }

  /* Prevent horizontal clip: safe padding for main content and banner text */
  #content.content-container,
  #content .content-container {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    box-sizing: border-box !important;
  }
  .main-content {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .homepage-banner-text {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    box-sizing: border-box !important;
  }
  .what-we-do-block,
  .what-we-do-grid,
  .sqs-html-content {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .page-text-wrapper .page-description,
  .page-text-wrapper .page-title {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* Rows: prevent negative margins from causing horizontal scroll/clip */
  .sqs-row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
  }
  /* Stack grid columns on mobile so image+text rows don’t leave blank space */
  .sqs-row .sqs-col-3,
  .sqs-row .sqs-col-4,
  .sqs-row .sqs-col-6,
  .sqs-row .sqs-col-8,
  .sqs-row .span-3,
  .sqs-row .span-4,
  .sqs-row .span-6,
  .sqs-row .span-8 {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }
  .sqs-block-image .image-block-wrapper,
  .image-block-outer-wrapper {
    max-width: 100% !important;
  }

  /* Homepage grid gallery: show actual images on mobile (prevent solid color blocks) */
  .sqs-gallery-block-grid .slide,
  .sqs-gallery-block-grid .slide .margin-wrapper {
    position: relative !important;
    overflow: hidden !important;
  }
  .sqs-gallery-block-grid .slide .image-slide-anchor,
  .sqs-gallery-block-grid .slide .image-slide-anchor.content-fill {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
  }
  .sqs-gallery-block-grid .slide .thumb-image {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
  }
  /* Ensure grid cells have aspect ratio so images show (3:4 vertical) */
  .sqs-gallery-block-grid.sqs-gallery-aspect-ratio-three-four-vertical .slide .margin-wrapper::before {
    content: '' !important;
    display: block !important;
    padding-bottom: 133.33% !important; /* 4/3 */
  }
  .sqs-gallery-block-grid .slide .margin-wrapper .image-slide-anchor {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
  }
  /* Homepage grid: 2 columns on mobile so images are larger and clearly visible */
  .sqs-gallery-block-grid.sqs-gallery-thumbnails-per-row-6 .sqs-gallery {
    display: flex !important;
    flex-wrap: wrap !important;
  }
  .sqs-gallery-block-grid.sqs-gallery-thumbnails-per-row-6 .slide {
    width: 50% !important;
    box-sizing: border-box !important;
  }
  .sqs-gallery-block-grid.sqs-gallery-thumbnails-per-row-6 .sqs-gallery-design-grid-slide .margin-wrapper {
    margin-right: 0 !important;
    margin-bottom: 2px !important;
  }

  /* Contact page: force desktop header hidden on mobile (overrides contact-specific display: block below) */
  body[data-page-name="contact"] #header.site-header,
  body[data-page-name="contact"] header.site-header,
  body[data-page-name="contact"] #header,
  body[data-page-name="contact"] .site-container > header {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }
  body[data-page-name="contact"] #mainNavWrapper,
  body[data-page-name="contact"] #header .site-navigation,
  body[data-page-name="contact"] #header .nav-wrapper,
  body[data-page-name="contact"] #header [data-nc-container="left"] {
    display: none !important;
  }

  /* Footer social icons on mobile: working display (full circle + icon) */
  #footer.bmf-unified-footer .bmf-footer-social a svg.sqs-svg-icon--social {
    width: 100% !important;
    height: 100% !important;
    margin: auto !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    border-radius: 50px !important;
  }

  /* Hide toggle checkboxes so they are never visible (footer / layout); keep focusable for labels */
  input.hidden,
  input.mobile-nav-toggle-box,
  input.folder-toggle-box {
    position: absolute !important;
    clip: rect(0, 0, 0, 0) !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    opacity: 0 !important;
  }
}

/* ----- Homepage: images section as horizontal seamless strip (cityscapes banner) ----- */
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
}
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .sqs-gallery {
  display: flex !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
  padding-bottom: 0 !important;
  gap: 0 !important;
  width: 100% !important;
}
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 400px !important;
}
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide .margin-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  padding-bottom: 0 !important;
  height: 400px !important;
  position: relative !important;
}
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide .margin-wrapper::before {
  content: none !important;
  display: none !important;
}
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide .image-slide-anchor,
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide .image-slide-anchor.content-fill {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide .thumb-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 400px !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Gallery grid: no padding-bottom on slide anchors and wrappers */
.sqs-gallery-block-grid.sqs-gallery-aspect-ratio-three-four-vertical .slide .margin-wrapper a.image-slide-anchor,
.sqs-gallery-block-grid.sqs-gallery-aspect-ratio-three-four-vertical .slide .margin-wrapper .content-wrapper,
.sqs-gallery-block-grid.sqs-gallery-aspect-ratio-three-four-vertical .slide .margin-wrapper .content-wrapper.content-fill .sqs-video-wrapper,
.sqs-gallery-block-grid .slide .margin-wrapper a.image-slide-anchor {
  padding-bottom: 0 !important;
}
.homepage .main-content .sqs-block-gallery .sqs-block-content {
  padding: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
}
.homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .sqs-gallery-meta-container {
  display: none !important;
}
.homepage .main-content .sqs-block-gallery {
  margin-bottom: 0 !important;
}
.homepage .main-content {
  margin-bottom: 0 !important;
}
.homepage main .bmf-footer-stay-inspired {
  margin-top: 0 !important;
  padding-top: 1.75rem !important;
}

/* Homepage gallery: 2 per column on mobile */
@media (max-width: 768px) {
  .homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .sqs-gallery {
    flex-wrap: wrap !important;
  }
  .homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide {
    flex: 0 0 50% !important;
    width: 50% !important;
    height: 200px !important;
  }
  .homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide .margin-wrapper {
    height: 200px !important;
  }
  .homepage .main-content .sqs-gallery-container.sqs-gallery-block-grid .slide .thumb-image {
    height: 200px !important;
  }
}

/* ----- Homepage only: transparent header over hero ----- */
.homepage #header.site-header,
.homepage header.site-header,
.homepage .overflow-wrapper #header {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}
.homepage #header.site-header,
.homepage header.site-header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 20 !important;
}

/* ----- All pages except homepage: header 100px tall, transparent background ----- */
body:not(.homepage) #header.site-header,
body:not(.homepage) header.site-header {
  min-height: 100px !important;
  height: 100px !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  z-index: auto !important;
}
/* Other (non-home, non-contact, non-about, non-service): dark nav on transparent header */
body:not(.homepage):not([data-page-name="contact"]):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]):not([data-page-name="savage-x-fenty"]):not([data-page-name="amazon-prime-video"]) #header .site-navigation a,
body:not(.homepage):not([data-page-name="contact"]):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]):not([data-page-name="savage-x-fenty"]):not([data-page-name="amazon-prime-video"]) #header .site-navigation .folder-toggle-label,
body:not(.homepage):not([data-page-name="contact"]):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]):not([data-page-name="savage-x-fenty"]):not([data-page-name="amazon-prime-video"]) #header .site-tagline,
body:not(.homepage):not([data-page-name="contact"]):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]):not([data-page-name="savage-x-fenty"]):not([data-page-name="amazon-prime-video"]) #header .logo-image a {
  color: #111 !important;
}
body:not(.homepage):not([data-page-name="contact"]):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]):not([data-page-name="savage-x-fenty"]):not([data-page-name="amazon-prime-video"]) #header .site-navigation a:hover,
body:not(.homepage):not([data-page-name="contact"]):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]):not([data-page-name="savage-x-fenty"]):not([data-page-name="amazon-prime-video"]) #header .site-navigation .folder-toggle-label:hover {
  color: #333 !important;
}
body:not(.homepage):not([data-page-name="contact"]):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]):not([data-page-name="savage-x-fenty"]):not([data-page-name="amazon-prime-video"]) #header .Icon use {
  fill: #111 !important;
}

/* About + Service pages: white nav so menu is visible over banner */
body[data-page-name="about"] #header .site-navigation a,
body[data-page-name="about"] #header .site-navigation a span,
body[data-page-name="about"] #header .site-navigation .folder-toggle-label,
body[data-page-name="about"] #header .site-navigation .nav-item a,
body[data-page-name="about"] #header .site-tagline,
body[data-page-name="about"] #header .logo-image a,
body[data-page-name="experiential"] #header .site-navigation a,
body[data-page-name="experiential"] #header .site-navigation a span,
body[data-page-name="experiential"] #header .site-navigation .folder-toggle-label,
body[data-page-name="experiential"] #header .site-navigation .nav-item a,
body[data-page-name="experiential"] #header .site-tagline,
body[data-page-name="experiential"] #header .logo-image a,
body[data-page-name="public-relations"] #header .site-navigation a,
body[data-page-name="public-relations"] #header .site-navigation a span,
body[data-page-name="public-relations"] #header .site-navigation .folder-toggle-label,
body[data-page-name="public-relations"] #header .site-navigation .nav-item a,
body[data-page-name="public-relations"] #header .site-tagline,
body[data-page-name="public-relations"] #header .logo-image a,
body[data-page-name="digital"] #header .site-navigation a,
body[data-page-name="digital"] #header .site-navigation a span,
body[data-page-name="digital"] #header .site-navigation .folder-toggle-label,
body[data-page-name="digital"] #header .site-navigation .nav-item a,
body[data-page-name="digital"] #header .site-tagline,
body[data-page-name="digital"] #header .logo-image a,
body[data-page-name="strategy-creative"] #header .site-navigation a,
body[data-page-name="strategy-creative"] #header .site-navigation a span,
body[data-page-name="strategy-creative"] #header .site-navigation .folder-toggle-label,
body[data-page-name="strategy-creative"] #header .site-navigation .nav-item a,
body[data-page-name="strategy-creative"] #header .site-tagline,
body[data-page-name="strategy-creative"] #header .logo-image a,
body[data-page-name="international"] #header .site-navigation a,
body[data-page-name="international"] #header .site-navigation a span,
body[data-page-name="international"] #header .site-navigation .folder-toggle-label,
body[data-page-name="international"] #header .site-navigation .nav-item a,
body[data-page-name="international"] #header .site-tagline,
body[data-page-name="international"] #header .logo-image a,
body[data-page-name="virtual-events"] #header .site-navigation a,
body[data-page-name="virtual-events"] #header .site-navigation a span,
body[data-page-name="virtual-events"] #header .site-navigation .folder-toggle-label,
body[data-page-name="virtual-events"] #header .site-navigation .nav-item a,
body[data-page-name="virtual-events"] #header .site-tagline,
body[data-page-name="virtual-events"] #header .logo-image a,
body[data-page-name="savage-x-fenty"] #header .site-navigation a,
body[data-page-name="savage-x-fenty"] #header .site-navigation a span,
body[data-page-name="savage-x-fenty"] #header .site-navigation .folder-toggle-label,
body[data-page-name="savage-x-fenty"] #header .site-navigation .nav-item a,
body[data-page-name="savage-x-fenty"] #header .site-tagline,
body[data-page-name="savage-x-fenty"] #header .logo-image a,
body[data-page-name="amazon-prime-video"] #header .site-navigation a,
body[data-page-name="amazon-prime-video"] #header .site-navigation a span,
body[data-page-name="amazon-prime-video"] #header .site-navigation .folder-toggle-label,
body[data-page-name="amazon-prime-video"] #header .site-navigation .nav-item a,
body[data-page-name="amazon-prime-video"] #header .site-tagline,
body[data-page-name="amazon-prime-video"] #header .logo-image a {
  color: #fff !important;
}
body[data-page-name="about"] #header .site-navigation a:hover,
body[data-page-name="about"] #header .site-navigation .folder-toggle-label:hover,
body[data-page-name="experiential"] #header .site-navigation a:hover,
body[data-page-name="experiential"] #header .site-navigation .folder-toggle-label:hover,
body[data-page-name="public-relations"] #header .site-navigation a:hover,
body[data-page-name="public-relations"] #header .site-navigation .folder-toggle-label:hover,
body[data-page-name="digital"] #header .site-navigation a:hover,
body[data-page-name="digital"] #header .site-navigation .folder-toggle-label:hover,
body[data-page-name="strategy-creative"] #header .site-navigation a:hover,
body[data-page-name="strategy-creative"] #header .site-navigation .folder-toggle-label:hover,
body[data-page-name="international"] #header .site-navigation a:hover,
body[data-page-name="international"] #header .site-navigation .folder-toggle-label:hover,
body[data-page-name="virtual-events"] #header .site-navigation a:hover,
body[data-page-name="virtual-events"] #header .site-navigation .folder-toggle-label:hover,
body[data-page-name="savage-x-fenty"] #header .site-navigation a:hover,
body[data-page-name="savage-x-fenty"] #header .site-navigation .folder-toggle-label:hover,
body[data-page-name="amazon-prime-video"] #header .site-navigation a:hover,
body[data-page-name="amazon-prime-video"] #header .site-navigation .folder-toggle-label:hover {
  color: #fff !important;
  opacity: 0.9 !important;
}
body[data-page-name="about"] #header .Icon use,
body[data-page-name="experiential"] #header .Icon use,
body[data-page-name="public-relations"] #header .Icon use,
body[data-page-name="digital"] #header .Icon use,
body[data-page-name="strategy-creative"] #header .Icon use,
body[data-page-name="international"] #header .Icon use,
body[data-page-name="virtual-events"] #header .Icon use,
body[data-page-name="savage-x-fenty"] #header .Icon use,
body[data-page-name="amazon-prime-video"] #header .Icon use {
  fill: #fff !important;
}

/* ----- Homepage: hero covers full viewport and extends under transparent header ----- */
.homepage .site-container,
.homepage .content-container,
body[data-page-name="home"] .content-container,
.collection-layout-default.homepage .content-container {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
.homepage .site-container {
  position: relative !important;
}
.homepage .page-banner-wrapper,
body[data-page-name="home"] .page-banner-wrapper,
.homepage .page-banner-has-video {
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  left: 50% !important;
  right: auto !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  min-height: 100vh !important;
}
.homepage .page-banner-image-container,
body[data-page-name="home"] .page-banner-image-container {
  min-height: 100vh !important;
  width: 100% !important;
  max-width: none !important;
  position: relative !important;
  overflow: hidden !important;
}
.homepage .page-banner-image-container .page-banner-image,
.homepage .page-banner-image-container .custom-fallback-image,
body[data-page-name="home"] .page-banner-image-container .custom-fallback-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100vh !important;
  object-fit: cover !important;
  object-position: center !important;
}
.homepage .sqs-video-background,
body[data-page-name="home"] .sqs-video-background {
  min-height: 100vh !important;
}
.homepage .sqs-video-background .custom-fallback-image,
body[data-page-name="home"] .sqs-video-background .custom-fallback-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100vh !important;
  object-fit: cover !important;
}

/* ----- About + Service pages: hero banner behind nav (header overlay) ----- */
body[data-page-name="about"] #header.site-header,
body[data-page-name="about"] header.site-header,
body[data-page-name="experiential"] #header.site-header,
body[data-page-name="experiential"] header.site-header,
body[data-page-name="public-relations"] #header.site-header,
body[data-page-name="public-relations"] header.site-header,
body[data-page-name="digital"] #header.site-header,
body[data-page-name="digital"] header.site-header,
body[data-page-name="strategy-creative"] #header.site-header,
body[data-page-name="strategy-creative"] header.site-header,
body[data-page-name="international"] #header.site-header,
body[data-page-name="international"] header.site-header,
body[data-page-name="virtual-events"] #header.site-header,
body[data-page-name="virtual-events"] header.site-header,
body[data-page-name="savage-x-fenty"] #header.site-header,
body[data-page-name="savage-x-fenty"] header.site-header,
body[data-page-name="amazon-prime-video"] #header.site-header,
body[data-page-name="amazon-prime-video"] header.site-header {
  position: absolute !important;
  top: 100px !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 200 !important;
  pointer-events: auto !important;
}
/* Keep content/banner below header so header stays clickable */
body[data-page-name="about"] #content.content-container,
body[data-page-name="experiential"] #content.content-container,
body[data-page-name="public-relations"] #content.content-container,
body[data-page-name="digital"] #content.content-container,
body[data-page-name="strategy-creative"] #content.content-container,
body[data-page-name="international"] #content.content-container,
body[data-page-name="virtual-events"] #content.content-container,
body[data-page-name="savage-x-fenty"] #content.content-container,
body[data-page-name="amazon-prime-video"] #content.content-container {
  position: relative !important;
  z-index: 0 !important;
}
body[data-page-name="about"] .page-banner-wrapper,
body[data-page-name="experiential"] .page-banner-wrapper,
body[data-page-name="public-relations"] .page-banner-wrapper,
body[data-page-name="digital"] .page-banner-wrapper,
body[data-page-name="strategy-creative"] .page-banner-wrapper,
body[data-page-name="international"] .page-banner-wrapper,
body[data-page-name="virtual-events"] .page-banner-wrapper,
body[data-page-name="savage-x-fenty"] .page-banner-wrapper,
body[data-page-name="amazon-prime-video"] .page-banner-wrapper {
  position: relative !important;
  z-index: 0 !important;
}
body[data-page-name="about"] #content .content-container,
body[data-page-name="about"] .content-container,
body[data-page-name="experiential"] #content .content-container,
body[data-page-name="experiential"] .content-container,
body[data-page-name="public-relations"] #content .content-container,
body[data-page-name="public-relations"] .content-container,
body[data-page-name="digital"] #content .content-container,
body[data-page-name="digital"] .content-container,
body[data-page-name="strategy-creative"] #content .content-container,
body[data-page-name="strategy-creative"] .content-container,
body[data-page-name="international"] #content .content-container,
body[data-page-name="international"] .content-container,
body[data-page-name="virtual-events"] #content .content-container,
body[data-page-name="virtual-events"] .content-container {
  padding-top: 0 !important;
}
body[data-page-name="about"] #content .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="about"] .content-container .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="experiential"] #content .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="experiential"] .content-container .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="public-relations"] #content .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="public-relations"] .content-container .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="digital"] #content .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="digital"] .content-container .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="strategy-creative"] #content .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="strategy-creative"] .content-container .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="international"] #content .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="international"] .content-container .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="virtual-events"] #content .page-banner-wrapper:not(.page-banner-has-video),
body[data-page-name="virtual-events"] .content-container .page-banner-wrapper:not(.page-banner-has-video) {
  margin-top: -100px !important;
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  left: 50% !important;
  right: auto !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  padding-top: 0 !important;
}
body[data-page-name="about"] .page-banner-image-container,
body[data-page-name="experiential"] .page-banner-image-container,
body[data-page-name="public-relations"] .page-banner-image-container,
body[data-page-name="digital"] .page-banner-image-container,
body[data-page-name="strategy-creative"] .page-banner-image-container,
body[data-page-name="international"] .page-banner-image-container,
body[data-page-name="virtual-events"] .page-banner-image-container {
  min-height: calc(75vh + 100px) !important;
  width: 100% !important;
  max-width: none !important;
  position: relative !important;
  overflow: hidden !important;
}
/* When banner image is set as CSS background (About + Service pages) it covers full section */
.page-banner-image-container.banner-bg-cover {
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.page-banner-image-container.banner-bg-cover .page-banner-image,
.page-banner-image-container.banner-bg-cover .custom-fallback-image {
  display: none !important;
}
body[data-page-name="about"] .page-banner-image-container .page-banner-image,
body[data-page-name="about"] .page-banner-image-container .custom-fallback-image,
body[data-page-name="experiential"] .page-banner-image-container .page-banner-image,
body[data-page-name="experiential"] .page-banner-image-container .custom-fallback-image,
body[data-page-name="public-relations"] .page-banner-image-container .page-banner-image,
body[data-page-name="public-relations"] .page-banner-image-container .custom-fallback-image,
body[data-page-name="digital"] .page-banner-image-container .page-banner-image,
body[data-page-name="digital"] .page-banner-image-container .custom-fallback-image,
body[data-page-name="strategy-creative"] .page-banner-image-container .page-banner-image,
body[data-page-name="strategy-creative"] .page-banner-image-container .custom-fallback-image,
body[data-page-name="international"] .page-banner-image-container .page-banner-image,
body[data-page-name="international"] .page-banner-image-container .custom-fallback-image,
body[data-page-name="virtual-events"] .page-banner-image-container .page-banner-image,
body[data-page-name="virtual-events"] .page-banner-image-container .custom-fallback-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: calc(75vh + 100px) !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Virtual Events hero: ensure banner and heading are visible, no overflow */
body[data-page-name="virtual-events"] .page-banner-wrapper.virtual-events-hero {
  position: relative !important;
  overflow: hidden !important;
  min-height: 60vh !important;
}
body[data-page-name="virtual-events"] .page-banner-wrapper.virtual-events-hero .page-banner-image-container {
  min-height: 60vh !important;
}
body[data-page-name="virtual-events"] .page-banner-wrapper::after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 55% !important;
  background: linear-gradient(to top, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.35) 45%, transparent 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
/* Aspire Coastal Retreat: remove any theme overlay on hero so image shows clear */
.aspire-coastal-retreat-page .page-banner-wrapper::before,
.aspire-coastal-retreat-page .page-banner-wrapper::after,
.fx-atlanta-page .page-banner-wrapper::before,
.fx-atlanta-page .page-banner-wrapper::after,
.cafe-bustelo-page .page-banner-wrapper::before,
.cafe-bustelo-page .page-banner-wrapper::after,
.tiktok-makeblackhistory-page .page-banner-wrapper::before,
.tiktok-makeblackhistory-page .page-banner-wrapper::after,
.the-1619-project-page .page-banner-wrapper::before,
.the-1619-project-page .page-banner-wrapper::after,
.w-hotels-page .page-banner-wrapper::before,
.w-hotels-page .page-banner-wrapper::after,
.visatiff-page .page-banner-wrapper::before,
.visatiff-page .page-banner-wrapper::after,
.maison-no9-page .page-banner-wrapper::before,
.maison-no9-page .page-banner-wrapper::after,
.canyon-ranch-page .page-banner-wrapper::before,
.canyon-ranch-page .page-banner-wrapper::after,
.la-mer-moisturizing-soft-cream-tiktok-campaign-page .page-banner-wrapper::before,
.la-mer-moisturizing-soft-cream-tiktok-campaign-page .page-banner-wrapper::after,
.la-mer-trunk-page .page-banner-wrapper::before,
.la-mer-trunk-page .page-banner-wrapper::after,
.olay-page .page-banner-wrapper::before,
.olay-page .page-banner-wrapper::after,
.amazon-home-page .page-banner-wrapper::before,
.amazon-home-page .page-banner-wrapper::after,
.esteelauder-page .page-banner-wrapper::before,
.esteelauder-page .page-banner-wrapper::after,
.uniqlo-page .page-banner-wrapper::before,
.uniqlo-page .page-banner-wrapper::after,
.co-by-colgate-page .page-banner-wrapper::before,
.co-by-colgate-page .page-banner-wrapper::after,
.dell-page .page-banner-wrapper::before,
.dell-page .page-banner-wrapper::after,
.benefit-cosmetics-1-page .page-banner-wrapper::before,
.benefit-cosmetics-1-page .page-banner-wrapper::after,
.dkny-page .page-banner-wrapper::before,
.dkny-page .page-banner-wrapper::after,
.india-page .page-banner-wrapper::before,
.india-page .page-banner-wrapper::after,
.tiktok-la-pride-page .page-banner-wrapper::before,
.tiktok-la-pride-page .page-banner-wrapper::after,
.hard-rock-hotels-page .page-banner-wrapper::before,
.hard-rock-hotels-page .page-banner-wrapper::after,
.vacheron-constantin-page .page-banner-wrapper::before,
.vacheron-constantin-page .page-banner-wrapper::after,
.sunglass-hut-3-page .page-banner-wrapper::before,
.sunglass-hut-3-page .page-banner-wrapper::after,
.summer-of-ghosts-page .page-banner-wrapper::before,
.summer-of-ghosts-page .page-banner-wrapper::after,
.moxy-hotels-1-page .page-banner-wrapper::before,
.moxy-hotels-1-page .page-banner-wrapper::after,
.amazon-fashion-2-page .page-banner-wrapper::before,
.amazon-fashion-2-page .page-banner-wrapper::after,
.spotify-page .page-banner-wrapper::before,
.spotify-page .page-banner-wrapper::after,
.hennessy-page .page-banner-wrapper::before,
.hennessy-page .page-banner-wrapper::after,
.upwork-page .page-banner-wrapper::before,
.upwork-page .page-banner-wrapper::after,
.sk-ii-page .page-banner-wrapper::before,
.sk-ii-page .page-banner-wrapper::after,
.tiktok-vidcon-page .page-banner-wrapper::before,
.tiktok-vidcon-page .page-banner-wrapper::after,
.visa-page .page-banner-wrapper::before,
.visa-page .page-banner-wrapper::after,
.w-amman-mural-project-page .page-banner-wrapper::before,
.w-amman-mural-project-page .page-banner-wrapper::after,
.esteelauder-strategy-creative-page .page-banner-wrapper::before,
.esteelauder-strategy-creative-page .page-banner-wrapper::after,
.afterpay-page .page-banner-wrapper::before,
.afterpay-page .page-banner-wrapper::after,
.hbo-max-page .page-banner-wrapper::before,
.hbo-max-page .page-banner-wrapper::after {
  display: none !important;
  content: none !important;
  background: none !important;
}
/* Banner page title: show on all pages (same as Virtual Events) – wrapper visible and positioned */
.page-banner-wrapper .page-text-wrapper--on-banner {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 10 !important;
  pointer-events: none !important;
}
/* Banner page title: heading bottom-left on hero, visible on all pages – extra bottom spacing so title doesn’t hit ground */
.page-banner-wrapper .page-text-wrapper--on-banner .page-title {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  bottom: 2.5rem !important;
  left: 1.5rem !important;
  right: 1.5rem !important;
  margin: 0 !important;
  max-width: 90% !important;
  font-family: 'Great Vibes', cursive !important;
  font-size: clamp(2.75rem, 8vw, 5rem) !important;
  font-weight: 400 !important;
  color: #fff !important;
  text-shadow: 0 0 30px rgba(255,255,255,0.35), 0 2px 24px rgba(0,0,0,0.5) !important;
  letter-spacing: 0.02em !important;
  line-height: 1.1 !important;
}
.page-banner-wrapper .page-text-wrapper--on-banner .page-description {
  display: none !important;
}

/* Virtual Events: keep original title spacing (1.5rem) – 2.5rem was for other pages only */
body[data-page-name="virtual-events"] .page-banner-wrapper .page-text-wrapper--on-banner .page-title {
  bottom: 1.5rem !important;
}

/* Virtual Events: reduce large white gaps between sections */
body[data-page-name="virtual-events"] .index-section,
body[data-page-name="virtual-events"] .sqs-row {
  margin-bottom: 0 !important;
}
body[data-page-name="virtual-events"] .index-list .index-section + .index-section {
  margin-top: 2rem !important;
}
body[data-page-name="virtual-events"] .collection-header + .sqs-layout,
body[data-page-name="virtual-events"] .sqs-layout + .sqs-layout {
  margin-top: 1.5rem !important;
}

/* ----- Other pages (not about/services): full-bleed banner, header in flow ----- */
body:not(.homepage):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]) #content .page-banner-wrapper:not(.page-banner-has-video),
body:not(.homepage):not([data-page-name="about"]):not([data-page-name="experiential"]):not([data-page-name="public-relations"]):not([data-page-name="digital"]):not([data-page-name="strategy-creative"]):not([data-page-name="international"]):not([data-page-name="virtual-events"]) .content-container .page-banner-wrapper:not(.page-banner-has-video) {
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  left: 50% !important;
  right: auto !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body:not(.homepage) .page-banner-image-container {
  min-height: 55vh !important;
  width: 100% !important;
  max-width: none !important;
  position: relative !important;
  overflow: hidden !important;
}
body:not(.homepage) .page-banner-image-container .page-banner-image,
body:not(.homepage) .page-banner-image-container .custom-fallback-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 55vh !important;
  object-fit: cover !important;
  object-position: center !important;
}
.sqs-video-background {
  min-height: calc(55vh + 180px) !important;
}
.sqs-video-background .custom-fallback-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: calc(55vh + 180px) !important;
  object-fit: cover !important;
}

/* Savage x Fenty hero: fixed height (not full viewport), video/fallback fill it */
body[data-page-name="savage-x-fenty"] .page-banner-wrapper.page-banner-has-video,
body[data-page-name="savage-x-fenty"] .page-banner-wrapper.page-banner-has-video .page-banner-image-container {
  min-height: 50vh !important;
  max-height: 50vh !important;
  height: 50vh !important;
}
body[data-page-name="savage-x-fenty"] .page-banner-wrapper.page-banner-has-video .sqs-video-background.savage-fenty-video-wrapper {
  min-height: 100% !important;
}
/* Savage x Fenty hero: video background container fills banner */
.page-banner-wrapper.page-banner-has-video .page-banner-image-container .sqs-video-background {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  overflow: hidden !important;
}
/* Savage x Fenty hero: fallback image when video unavailable (file:// or no embed) */
.page-banner-wrapper.page-banner-has-video .sqs-video-background.savage-fenty-video-wrapper .savage-fenty-hero-fallback {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  z-index: 0 !important;
}
/* Savage x Fenty hero: Vimeo background video iframe – fill banner, cover aspect, no interaction; above fallback */
.page-banner-wrapper.page-banner-has-video .sqs-video-background iframe.savage-fenty-hero-video {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 100vw !important;
  min-width: 177.78vh !important;
  height: 56.25vw !important;
  min-height: 100% !important;
  transform: translate(-50%, -50%) !important;
  pointer-events: none !important;
  border: 0 !important;
  z-index: 1 !important;
}

/* ----- MADE TO cycling text – large hero size to match live ----- */
.homepage-banner-text {
  font-size: clamp(2.5rem, 6vw, 5rem) !important;
  line-height: 1.15 !important;
  font-weight: 500 !important;
}
.homepage-banner-animating-text {
  position: relative !important;
  display: inline-block !important;
  min-width: 16em !important;
  min-height: 1.1em !important;
  vertical-align: middle !important;
  font-size: inherit !important;
}
.homepage-banner-animating-text-line {
  display: none !important;
}
.homepage-banner-animating-text img[data-index] {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: auto !important;
  height: 100% !important;
  max-height: 1.25em !important;
  object-fit: contain !important;
  object-position: left center !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.4s ease !important;
  pointer-events: none !important;
}
.homepage-banner-animating-text img[data-index].cycling-active {
  opacity: 1 !important;
  visibility: visible !important;
}

/* ----- Slideshow: one slide only (match even when class has newlines/spaces) ----- */
[class*="sqs-gallery-block-slideshow"] .sqs-gallery,
.sqs-gallery-container.sqs-gallery-block-slideshow .sqs-gallery,
.sqs-gallery-block-slideshow .sqs-gallery {
  position: relative !important;
  width: 100% !important;
  overflow: hidden !important;
  min-height: 400px !important;
}
[class*="sqs-gallery-block-slideshow"] .sqs-gallery::before,
.sqs-gallery-block-slideshow .sqs-gallery::before {
  content: "" !important;
  display: block !important;
  padding-bottom: 56.25% !important;
}
[class*="sqs-gallery-block-slideshow"] .sqs-gallery .slide,
.sqs-gallery-block-slideshow .sqs-gallery .slide {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.5s ease !important;
  z-index: 0 !important;
  pointer-events: none !important;
  display: block !important;
}
[class*="sqs-gallery-block-slideshow"] .sqs-gallery .slide.slide-active,
.sqs-gallery-block-slideshow .sqs-gallery .slide.slide-active {
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 1 !important;
  pointer-events: auto !important;
}
[class*="sqs-gallery-block-slideshow"] .slide .thumb-image,
.sqs-gallery-block-slideshow .slide .thumb-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
.sqs-gallery-controls a.previous,
.sqs-gallery-controls a.next {
  cursor: pointer !important;
}

/* ----- Custom Gateway slider (injected by site.js) – ensure it’s visible ----- */
.bmf-slider-injected .bmf-slider {
  display: block !important;
  width: 100% !important;
  min-height: 280px !important;
}
.bmf-slider-injected.sqs-gallery-container {
  min-height: 0 !important;
}
.bmf-slider__viewport {
  position: relative !important;
  display: block !important;
}
.bmf-slider__slide {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.bmf-slider__slide img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* ----- Contact page: header overlays slider (100px, transparent, white nav) ----- */
body[data-page-name="contact"] .overflow-wrapper {
  overflow: visible !important;
}
body[data-page-name="contact"] #site.site-container {
  position: relative !important;
  z-index: 0 !important;
}
body[data-page-name="contact"] #content.content-container {
  position: relative !important;
  z-index: 0 !important;
}
body[data-page-name="contact"] .contact-hero-slider {
  z-index: 0 !important;
}
/* Contact desktop header: only apply on desktop so mobile uses burger menu */
@media (min-width: 769px) {
  body[data-page-name="contact"] #header.site-header,
  body[data-page-name="contact"] header.site-header {
    position: absolute !important;
    top: 100px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 100 !important;
    min-height: 100px !important;
    height: 100px !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    display: block !important;
  }
  body[data-page-name="contact"] #header .site-navigation,
  body[data-page-name="contact"] #header .nav-wrapper,
  body[data-page-name="contact"] #header [data-nc-container="left"] {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  body[data-page-name="contact"] #header .site-navigation a,
  body[data-page-name="contact"] #header .site-navigation .folder-toggle-label,
  body[data-page-name="contact"] #header .site-tagline,
  body[data-page-name="contact"] #header .logo-image a {
    color: #fff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.6) !important;
  }
  body[data-page-name="contact"] #header .site-navigation a:hover,
  body[data-page-name="contact"] #header .site-navigation .folder-toggle-label:hover {
    color: #fff !important;
    opacity: 0.9 !important;
  }
  body[data-page-name="contact"] #header .Icon use {
    fill: #fff !important;
  }
  body[data-page-name="contact"] #header .site-navigation .subnav a,
  body[data-page-name="contact"] #header .site-navigation .subnav a span {
    color: #111 !important;
    text-shadow: none !important;
  }
  body[data-page-name="contact"] #header .logo-image img {
    opacity: 1 !important;
  }
}
/* Contact page: keep only 1 contact card (New Business), hide the rest */
body[data-page-name="contact"] .sqs-block-image:not(:has(a[href="mailto:contact@gatewayholdingsco.com"])) {
  display: none !important;
}
body[data-page-name="contact"] .col.sqs-col-3:not(:has(a[href="mailto:contact@gatewayholdingsco.com"])) {
  display: none !important;
}
/* Make the single visible contact card full width */
body[data-page-name="contact"] .col.sqs-col-3:has(a[href="mailto:contact@gatewayholdingsco.com"]) {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}
/* Within that column, hide any image blocks so only the HTML card shows */
body[data-page-name="contact"] .col.sqs-col-3:has(a[href="mailto:contact@gatewayholdingsco.com"]) .sqs-block-image {
  display: none !important;
}

/* Contact page: center all main content and contact block */
body[data-page-name="contact"] .main-content .sqs-layout,
body[data-page-name="contact"] .main-content .sqs-layout .sqs-row {
  display: flex !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
}
body[data-page-name="contact"] .main-content .sqs-layout .sqs-row .col {
  flex: 0 0 auto !important;
}
body[data-page-name="contact"] .row.sqs-row:has(.gateway-contact-card) {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
}

/* Contact card: HTML-only design (no image), centered */
body[data-page-name="contact"] .gateway-contact-card {
  position: relative;
  padding: 2.5rem 2rem;
  max-width: 32rem;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Yellow script "new business" behind main text — centered */
body[data-page-name="contact"] .gateway-contact-card__script {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 4rem;
  color: #c9a227;
  opacity: 0.5;
  z-index: 0;
  pointer-events: none;
  white-space: nowrap;
  text-align: center;
}
body[data-page-name="contact"] .gateway-contact-card__label,
body[data-page-name="contact"] .gateway-contact-card__title,
body[data-page-name="contact"] .gateway-contact-card__email {
  position: relative;
  z-index: 1;
  text-align: center !important;
}
body[data-page-name="contact"] .gateway-contact-card__email {
  display: inline-block;
}
body[data-page-name="contact"] .gateway-contact-card__label {
  font-size: 0.75rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #333;
  margin: 0 0 0.5rem 0;
  font-weight: 600;
}
body[data-page-name="contact"] .gateway-contact-card__title {
  font-size: 2.25rem;
  font-weight: 400;
  color: #111;
  margin: 0 0 0.75rem 0;
  letter-spacing: 0.02em;
  line-height: 1.2;
}
body[data-page-name="contact"] .gateway-contact-card__email {
  font-size: 1rem;
  color: #111;
  text-decoration: none;
  border-bottom: 1px solid #ccc;
  transition: border-color 0.2s, color 0.2s;
}
body[data-page-name="contact"] .gateway-contact-card__email:hover {
  border-bottom-color: #111;
  color: #333;
}

/* Contact card: responsive (mobile) */
@media (max-width: 767px) {
  body[data-page-name="contact"] .gateway-contact-card {
    padding: 1.75rem 1.25rem;
    max-width: 100%;
  }
  body[data-page-name="contact"] .gateway-contact-card__script {
    font-size: 2.5rem;
  }
  body[data-page-name="contact"] .gateway-contact-card__title {
    font-size: 1.75rem;
  }
  body[data-page-name="contact"] .gateway-contact-card__email {
    word-break: break-word;
    overflow-wrap: break-word;
  }
  body[data-page-name="contact"] #content .content-container,
  body[data-page-name="contact"] .content-container {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

body[data-page-name="contact"] .page-banner-wrapper.page-banner-has-video {
  display: none !important;
}
body[data-page-name="contact"] #content .content-container,
body[data-page-name="contact"] .content-container {
  padding-top: 0 !important;
}
body[data-page-name="contact"] #page,
body[data-page-name="contact"] main.site-page {
  margin-top: -100px !important;
}

/* About page: hide image hero; carousel below becomes hero (like Contact) */
body[data-page-name="about"] .page-banner-wrapper.page-banner-has-image {
  display: none !important;
}
body[data-page-name="about"] #content .content-container,
body[data-page-name="about"] .content-container {
  padding-top: 0 !important;
}
body[data-page-name="about"] #page,
body[data-page-name="about"] main.site-page {
  margin-top: -100px !important;
}

/* ----- Contact page: stacked gallery as hero behind nav (full width, fade slider) ----- */
body[data-page-name="contact"] .contact-hero-slider {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  position: relative !important;
  overflow: hidden !important;
  left: 0 !important;
}
body[data-page-name="contact"] .contact-hero-slider .sqs-gallery {
  position: relative !important;
  width: 100% !important;
  min-height: 55vh !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
  background: #111 !important;
}
body[data-page-name="contact"] .contact-hero-slider .sqs-gallery::before {
  content: "" !important;
  display: block !important;
  padding-bottom: 0 !important;
  height: 0 !important;
}
body[data-page-name="contact"] .contact-hero-slider .image-wrapper {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  transition: opacity 0.8s ease !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
body[data-page-name="contact"] .contact-hero-slider .image-wrapper.contact-hero-slide--active {
  opacity: 1 !important;
  z-index: 1 !important;
}
body[data-page-name="contact"] .contact-hero-slider .image-wrapper .thumb-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
body[data-page-name="contact"] .contact-hero-slider .sqs-gallery-meta-container,
body[data-page-name="contact"] .contact-hero-slider .sqs-gallery-controls {
  display: none !important;
}

/* ----- About page: stacked gallery as hero carousel (same as Contact hero) ----- */
body[data-page-name="about"] .about-gallery-carousel {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  position: relative !important;
  overflow: hidden !important;
  left: 0 !important;
}
body[data-page-name="about"] .about-gallery-carousel .sqs-gallery {
  position: relative !important;
  width: 100% !important;
  min-height: 55vh !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
  background: #111 !important;
}
body[data-page-name="about"] .about-gallery-carousel .sqs-gallery::before {
  content: "" !important;
  display: block !important;
  padding-bottom: 0 !important;
  height: 0 !important;
}
body[data-page-name="about"] .about-gallery-carousel .image-wrapper {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  transition: opacity 0.8s ease !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
body[data-page-name="about"] .about-gallery-carousel .image-wrapper.carousel-slide-active {
  opacity: 1 !important;
  z-index: 1 !important;
}
body[data-page-name="about"] .about-gallery-carousel .image-wrapper .thumb-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
body[data-page-name="about"] .about-gallery-carousel .sqs-gallery-meta-container,
body[data-page-name="about"] .about-gallery-carousel .sqs-gallery-controls {
  display: none !important;
}

/* ----- Footer logo: sensible size, no extra height from aspect-ratio box ----- */
/* Override inline style="max-width:2213px" on figure */
#footer .sqs-block-image .sqs-block-image-figure,
#footer .sqs-block-image.sqs-block-image .sqs-block-image-figure,
#footer .sqs-block-image-figure.intrinsic,
#footer .sqs-block-image figure.sqs-block-image-figure {
  max-width: 180px !important;
  margin: 0 !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  height: auto !important;
  min-height: 0 !important;
}
#footer .sqs-block-image .sqs-block-image-figure.intrinsic {
  height: auto !important;
}
#footer .sqs-block-image .image-block-wrapper {
  position: relative !important;
  padding-bottom: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}
/* Override inline padding-bottom:10.98% on aspect-ratio container (the culprit) */
#footer .sqs-block-image .sqs-image-shape-container-element,
#footer .sqs-block-image .image-block-wrapper .sqs-image-shape-container-element,
#footer .sqs-block-image .sqs-image-shape-container-element.has-aspect-ratio,
#footer .sqs-image-shape-container-element.has-aspect-ratio,
#footer [class*="sqs-image-shape-container-element"][class*="has-aspect-ratio"] {
  position: relative !important;
  padding-bottom: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: 48px !important;
  overflow: visible !important;
}
#footer .image-block-wrapper .sqs-image-shape-container-element[style*="padding-bottom"] {
  padding-bottom: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}
#footer .sqs-block-image .image-block-wrapper img {
  position: relative !important;
  width: auto !important;
  max-width: 180px !important;
  height: auto !important;
  max-height: 48px !important;
  object-fit: contain !important;
  object-position: left center !important;
  display: block !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
#footer .sqs-block-image .sqs-block-content {
  padding: 0 !important;
  min-height: 0 !important;
}
#footer .sqs-block-image .image-block-outer-wrapper {
  min-height: 0 !important;
}
/* Kill any line-box gap from the image block */
#footer .sqs-block-image {
  line-height: 0 !important;
  font-size: 0 !important;
}
#footer .sqs-block-image .sqs-block-image-figure {
  line-height: 0 !important;
  display: block !important;
}

/* ----- Footer: collapse all extra height; prevent stretch on service pages ----- */
#footer.site-footer,
#footer {
  padding-bottom: 0 !important;
  flex: 0 0 auto !important;   /* never grow in flex layout (sticky-footer) */
  min-height: 0 !important;
  height: auto !important;
}
#footer-blocks.sqs-layout,
#footer .sqs-layout {
  padding: 0 !important;
  min-height: 0 !important;
}
#footer-blocks .row.sqs-row,
#footer-blocks .col,
#footer-blocks .sqs-row,
#footer-blocks [class*="sqs-col"] {
  min-height: 0 !important;
  padding-bottom: 0 !important;
}
#footer-blocks .sqs-block.vsize-1 .sqs-block-content,
#footer-blocks .sqs-block.vsize-2 .sqs-block-content,
#footer-blocks .sqs-block.vsize-3 .sqs-block-content,
#footer-blocks .sqs-block.vsize-4 .sqs-block-content,
#footer-blocks .sqs-block.vsize-5 .sqs-block-content,
#footer-blocks .sqs-block.vsize-6 .sqs-block-content,
#footer-blocks .sqs-block.vsize-7 .sqs-block-content,
#footer-blocks .sqs-block.vsize-8 .sqs-block-content,
#footer-blocks .sqs-block.vsize-9 .sqs-block-content,
#footer-blocks .sqs-block.vsize-10 .sqs-block-content {
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* ----- Collection Footer: empty block on service pages only (between main and footer) — collapse it -----
   About has no .collection-footer; service pages have .collection-footer.empty, which creates the big gap. */
.collection-footer.empty,
.sqs-layout.collection-footer.empty,
.collection-footer.empty .sqs-layout,
.collection-footer.empty .row.sqs-row,
.collection-footer.empty .col,
.collection-footer.empty .sqs-row,
.collection-footer.empty [class*="sqs-col"] {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: none !important;
}

/* ----- Remove unnecessary blank spaces and gaps site-wide ----- */
.sqs-block-spacer .sqs-block-content,
.spacer-block .sqs-block-content,
.sqs-block.spacer-block .sqs-block-content {
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  line-height: 0 !important;
  font-size: 0 !important;
}
.sqs-block.spacer-block.sized.vsize-1 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-2 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-3 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-4 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-5 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-6 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-7 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-8 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-9 .sqs-block-content,
.sqs-block.spacer-block.sized.vsize-10 .sqs-block-content {
  height: 0 !important;
  min-height: 0 !important;
}
#footer-blocks .sqs-block-spacer .sqs-block-content,
#footer-blocks .spacer-block .sqs-block-content {
  height: 0 !important;
  min-height: 0 !important;
}
/* Spacer with data-aspect-ratio gets height from Squarespace script — collapse the whole block */
#footer .sqs-block.spacer-block[data-aspect-ratio],
#footer-blocks .sqs-block.spacer-block[data-aspect-ratio] {
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
}
#footer .sqs-block.spacer-block[data-aspect-ratio] .sqs-block-content,
#footer-blocks .sqs-block.spacer-block[data-aspect-ratio] .sqs-block-content {
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
.sqs-row {
  margin-bottom: 0 !important;
}
.sqs-row + .sqs-row {
  margin-top: 0 !important;
}
.sqs-layout .sqs-block {
  margin-bottom: 0 !important;
}
.sqs-layout .sqs-block + .sqs-block {
  margin-top: 0 !important;
}
#page .main-content,
.main-content {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.site-page {
  padding-bottom: 0 !important;
}

/* ----- No black gap below footer (service pages and all non-homepage) ----- */
html {
  background-color: #fff !important;
  min-height: auto !important;
  height: auto !important;
}
body {
  background-color: #fff !important;
  min-height: auto !important;
  height: auto !important;
}
.overflow-wrapper {
  min-height: auto !important;
  background-color: #fff !important;
}
#site.site-container {
  min-height: auto !important;
  background-color: #fff !important;
}
#content.content-container {
  min-height: auto !important;
  background-color: #fff !important;
}

/* Service/about pages: do NOT stretch page to 100vh so footer stays natural height (no big black footer) */
body:not(.homepage) #site.site-container {
  display: block !important;
  min-height: 0 !important;
}

/* ----- Match About page footer layout on Service pages (collection-type-index / view-list) -----
   About uses collection-type-page; Services use collection-type-index + view-list.
   Force same layout so footer doesn't stretch. */
body.collection-type-index .overflow-wrapper,
body.view-list .overflow-wrapper {
  display: block !important;
  min-height: 0 !important;
}
body.collection-type-index #site.site-container,
body.view-list #site.site-container {
  display: block !important;
  min-height: 0 !important;
  flex: none !important;
}
body.collection-type-index #footer.site-footer,
body.collection-type-index #footer,
body.view-list #footer.site-footer,
body.view-list #footer {
  flex: 0 0 auto !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: 560px !important; /* Cap so script/layout can't make it huge */
  align-self: flex-start !important;
  box-sizing: border-box !important;
}
/* Override any inline height set by spacer script */
body.collection-type-index #footer .sqs-block.spacer-block,
body.view-list #footer .sqs-block.spacer-block {
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
}
/* Service pages: #content must not stretch — no min-height so footer sits right under main */
body.collection-type-index #content.content-container,
body.view-list #content.content-container {
  min-height: 0 !important;
  height: auto !important;
  display: block !important;
}
body.collection-type-index #content.content-container,
body.view-list #content.content-container {
  flex: none !important;
}

/* No black gap under footer on service pages: force any empty space below footer to be white */
body.collection-type-index .overflow-wrapper,
body.collection-type-index #site.site-container,
body.collection-type-index #content.content-container,
body.view-list .overflow-wrapper,
body.view-list #site.site-container,
body.view-list #content.content-container {
  background-color: #fff !important;
}

/* Service pages: allow natural height and scroll (no height clamp so scrolling works). */
html:has(body.collection-type-index),
html:has(body.view-list) {
  height: auto !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
}
body.collection-type-index,
body.view-list {
  height: auto !important;
  min-height: auto !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
body.collection-type-index #content.content-container,
body.view-list #content.content-container {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
body.collection-type-index #footer,
body.view-list #footer {
  margin-bottom: 0 !important;
}
body.collection-type-index .overflow-wrapper,
body.view-list .overflow-wrapper {
  height: auto !important;
  min-height: 0 !important;
}
body.collection-type-index #site.site-container,
body.view-list #site.site-container {
  height: auto !important;
  min-height: 0 !important;
}

/* Force white nav on about + service pages (last so it wins over any other rule) */
body[data-page-name="about"] #header .site-navigation .nav-item a span,
body[data-page-name="about"] #header .site-navigation .nav-item a,
body[data-page-name="about"] #header .site-navigation .folder-toggle-label,
body[data-page-name="experiential"] #header .site-navigation .nav-item a span,
body[data-page-name="experiential"] #header .site-navigation .nav-item a,
body[data-page-name="experiential"] #header .site-navigation .folder-toggle-label,
body[data-page-name="public-relations"] #header .site-navigation .nav-item a span,
body[data-page-name="public-relations"] #header .site-navigation .nav-item a,
body[data-page-name="public-relations"] #header .site-navigation .folder-toggle-label,
body[data-page-name="digital"] #header .site-navigation .nav-item a span,
body[data-page-name="digital"] #header .site-navigation .nav-item a,
body[data-page-name="digital"] #header .site-navigation .folder-toggle-label,
body[data-page-name="strategy-creative"] #header .site-navigation .nav-item a span,
body[data-page-name="strategy-creative"] #header .site-navigation .nav-item a,
body[data-page-name="strategy-creative"] #header .site-navigation .folder-toggle-label,
body[data-page-name="international"] #header .site-navigation .nav-item a span,
body[data-page-name="international"] #header .site-navigation .nav-item a,
body[data-page-name="international"] #header .site-navigation .folder-toggle-label,
body[data-page-name="virtual-events"] #header .site-navigation .nav-item a span,
body[data-page-name="virtual-events"] #header .site-navigation .nav-item a,
body[data-page-name="virtual-events"] #header .site-navigation .folder-toggle-label {
  color: #fff !important;
}
body[data-page-name="about"] #header .site-tagline,
body[data-page-name="about"] #header .logo-image a,
body[data-page-name="experiential"] #header .site-tagline,
body[data-page-name="experiential"] #header .logo-image a,
body[data-page-name="public-relations"] #header .site-tagline,
body[data-page-name="public-relations"] #header .logo-image a,
body[data-page-name="digital"] #header .site-tagline,
body[data-page-name="digital"] #header .logo-image a,
body[data-page-name="strategy-creative"] #header .site-tagline,
body[data-page-name="strategy-creative"] #header .logo-image a,
body[data-page-name="international"] #header .site-tagline,
body[data-page-name="international"] #header .logo-image a,
body[data-page-name="virtual-events"] #header .site-tagline,
body[data-page-name="virtual-events"] #header .logo-image a {
  color: #fff !important;
}

/* Services submenu (dropdown): keep black so readable on light background */
body[data-page-name="about"] #header .site-navigation .subnav a,
body[data-page-name="about"] #header .site-navigation .subnav a span,
body[data-page-name="experiential"] #header .site-navigation .subnav a,
body[data-page-name="experiential"] #header .site-navigation .subnav a span,
body[data-page-name="public-relations"] #header .site-navigation .subnav a,
body[data-page-name="public-relations"] #header .site-navigation .subnav a span,
body[data-page-name="digital"] #header .site-navigation .subnav a,
body[data-page-name="digital"] #header .site-navigation .subnav a span,
body[data-page-name="strategy-creative"] #header .site-navigation .subnav a,
body[data-page-name="strategy-creative"] #header .site-navigation .subnav a span,
body[data-page-name="international"] #header .site-navigation .subnav a,
body[data-page-name="international"] #header .site-navigation .subnav a span,
body[data-page-name="virtual-events"] #header .site-navigation .subnav a,
body[data-page-name="virtual-events"] #header .site-navigation .subnav a span {
  color: #111 !important;
}

.bignumber{
  font-size: 48px;
  font-family: 'Portrait Web' !important;
}
.sqs-svg-icon--wrapper img{
  width: 100%;
}