/* Trustindex Google Reviews - White text for dark background */
.ti-widget.ti-goog .ti-widget-container,
.ti-widget.ti-goog .ti-widget-container .ti-name,
.ti-widget.ti-goog .ti-review-item .ti-name,
.ti-widget.ti-goog .ti-footer .ti-name,
.ti-widget.ti-goog .ti-footer-link-block,
.ti-widget.ti-goog .ti-footer-filter-text,
.ti-widget.ti-goog .ti-rating-text,
.ti-widget.ti-goog .ti-rating-text strong:not(.ti-rating-large),
.ti-widget.ti-goog .ti-rating-text span,
.ti-widget.ti-goog .ti-footer,
.ti-widget.ti-goog .ti-footer strong:not(.ti-rating-large),
.ti-widget.ti-goog .ti-footer span,
.ti-widget.ti-goog .ti-ai-summary-item,
.ti-widget.ti-goog .ti-ten-rating-score,
.ti-widget.ti-goog .ti-verified-by-row {
    color: #ffffff !important;
}

.ti-widget.ti-goog .ti-widget-container .ti-date {
    color: #cccccc !important;
}

.ti-widget.ti-goog .ti-read-more span {
    color: #ffffff !important;
}

.ti-widget.ti-goog .ti-verified-by .ti-info-icon {
    background-color: #ffffff !important;
}

/* =====================================================
   MOBILE OPTIMIZATIONS — Only applies on ≤ 767px
   Desktop layout is completely unchanged.
   ===================================================== */

@media (max-width: 767px) {

  /* === NAVBAR === */
  #navbar {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  /* Bigger logo on mobile */
  #nav-logo {
    width: 10rem !important;
  }

  /* === HERO SECTION — full height flex column === */
  #home {
    min-height: 100vh !important;
    padding-top: 5rem !important;
    padding-bottom: 1.5rem !important;
    align-items: stretch !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* Grid wrapper: stretch to fill #home */
  #home > div.\!relative.\!z-20 {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 0.75rem !important;
  }

  /* Glass-box: flex column, fills the grid, space-between top/bottom groups */
  .glass-box {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }

  /* Override the Tailwind !p-10 padding on glass-box */
  #home .glass-box.\!p-10,
  #home .glass-box.\!p-16,
  #home .glass-box[class*="!p-"] {
    padding: 0 !important;
  }

  /* Reset all glass-box child margins */
  .glass-box > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    flex-shrink: 0 !important;
  }

  /* === TOP GROUP === */

  /* Eyelet text */
  #home .glass-box > p:first-child {
    font-size: 0.6rem !important;
    letter-spacing: 0.12em !important;
    padding-bottom: 0.5rem !important;
  }

  /* "Treasured Moments" heading */
  #home h1 {
    font-size: 3.5rem !important;
    line-height: 1.05 !important;
    padding-bottom: 0.75rem !important;
  }

  /* Badge */
  #home .glass-box > div:first-of-type {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Badge span — one line */
  #home .glass-box > div:first-of-type span {
    font-size: 0.5rem !important;
    letter-spacing: 0px !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    width: 100% !important;
  }

  #home .glass-box > div:first-of-type span svg {
    flex-shrink: 0 !important;
    width: 10px !important;
    height: 10px !important;
  }

  /* === SPACER between badge and bottom group === */
  /* The description paragraph acts as the start of the bottom group
     and pushes itself (and subsequent items) to the bottom */
  #home .glass-box > p:last-of-type {
    margin-top: auto !important;
    padding-top: 1.25rem !important;
    font-size: 0.875rem !important;
    line-height: 1.5 !important;
    padding-bottom: 0.75rem !important;
  }

  /* FILM / FLASH / PRINT icons */
  #home .glass-box > div:nth-last-child(2) {
    padding-bottom: 0.75rem !important;
  }

  /* CTA buttons */
  #home .glass-box > div:last-child {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.6rem !important;
  }

  #home .glass-box > div:last-child a {
    text-align: center !important;
    width: 100% !important;
    display: block !important;
    padding: 0.875rem 1rem !important;
    font-size: 0.8rem !important;
    box-sizing: border-box !important;
  }

  /* === BRANDS SECTION === */
  #brands-section > div:first-child {
    white-space: normal !important;
  }

  #brands-section h2 {
    white-space: normal !important;
    word-wrap: break-word !important;
    font-size: 1.25rem !important;
    line-height: 1.3 !important;
  }

  #brands-section p {
    white-space: normal !important;
    font-size: 0.8rem !important;
  }

  #brands-section h3 {
    white-space: normal !important;
    font-size: 0.7rem !important;
  }

  /* === FOOTER === */
  footer .max-w-7xl > .grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 1.5rem !important;
  }

  footer .max-w-7xl > .grid > .col-span-1:first-child {
    grid-column: 1 / -1 !important;
  }

}

/* Extra small phones < 480px */
@media (max-width: 480px) {

  #home h1 {
    font-size: 2.75rem !important;
  }

  #brands-section h2 {
    font-size: 1.05rem !important;
  }

  footer .max-w-7xl > .grid {
    grid-template-columns: 1fr !important;
  }

}

/* Corporate Events page - Change headings from Literata 72pt to Montserrat Bold */
.problem-item h4,
.deliver-card h3,
.process-step h4 {
	  font-family: Montserrat, sans-serif !important;
	  font-weight: 700 !important;
}
}