/* ================================================
   RITUAL MEDIA AGENCY — GLOBAL OVERRIDES
   Do not remove or modify this file via AI prompts.
   All changes must be explicitly requested.
   ================================================ */

/* === BASE + OVERSCROLL === */
html { background-color: #2C1A0E; }
body { background-color: #EFE8DB; overflow-x: hidden; }

/* === FOOTER — DARK BROWN STYLE === */
footer {
  background-color: #2C1A0E !important;
  border-top: 1px solid rgba(250, 246, 241, 0.15) !important;
}
footer p, footer a, footer span, footer li {
  color: rgba(250, 246, 241, 0.75) !important;
}
footer h3, footer h4 {
  color: rgba(250, 246, 241, 0.45) !important;
  letter-spacing: 0.1em !important;
}

/* === BUTTONS — NORMALIZE ALL SIZES SITE-WIDE === */
a[style*="border-radius"][style*="padding"],
button[style*="border-radius"][style*="padding"] {
  padding: 12px 24px !important;
  font-size: 13px !important;
  letter-spacing: 0.03em !important;
  min-width: unset !important;
  width: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  line-height: 1.4 !important;
}

/* === CTA SECTION — SPECIFIC STYLING ===
   Note: Blanket centering rule removed. Specific styles will be applied only when requested. */

/* ================================================
   MOBILE — MAX-WIDTH 548px
   ================================================ */
@media (max-width: 548px) {

  /* HERO PADDING */
  section[style*="padding-top: 120px"] {
    padding-top: 90px !important;
  }

  /* BUTTONS — SMALLER ON MOBILE, NO WRAP */
  a[style*="border-radius"][style*="padding"],
  button[style*="border-radius"][style*="padding"] {
    padding: 10px 20px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
  }

  /* SECTION 01 SIDEBAR — COLLAPSE TO 2x2 BELOW BUTTONS */
  div[style*="grid-template-columns: 60px 1fr 280px"] {
    grid-template-columns: 60px 1fr !important;
    gap: 24px !important;
  }
  div[style*="grid-template-columns: 60px 1fr 280px"] > *:nth-child(3) {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px 24px !important;
    margin-top: 28px !important;
  }
  div[style*="grid-template-columns: 60px 1fr 280px"] > *:nth-child(3) * {
    white-space: normal !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
  }

  /* SERVICE/PRICING CARDS — STACK VERTICALLY */
  div[style*="grid-template-columns: repeat(3"],
  div[style*="grid-template-columns: repeat(2"],
  div[style*="grid-template-columns: 1fr 1fr 1fr"],
  div[style*="grid-template-columns: 1fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  /* FOOTER MOBILE — LOGO TOP CENTERED, 3 COLS BELOW */
  div[style*="grid-template-columns: 1fr 1fr 1fr 1fr"] {
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 24px 16px !important;
  }
  div[style*="grid-template-columns: 1fr 1fr 1fr 1fr"] > *:first-child {
    grid-column: 1 / -1 !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    margin-bottom: 8px !important;
  }
  div[style*="grid-template-columns: 1fr 1fr 1fr 1fr"] p,
  div[style*="grid-template-columns: 1fr 1fr 1fr 1fr"] a,
  div[style*="grid-template-columns: 1fr 1fr 1fr 1fr"] span {
    font-size: 11px !important;
    line-height: 1.6 !important;
  }
  div[style*="grid-template-columns: 1fr 1fr 1fr 1fr"] h3,
  div[style*="grid-template-columns: 1fr 1fr 1fr 1fr"] h4 {
    font-size: 11px !important;
    margin-bottom: 8px !important;
  }

  /* CTA SECTION MOBILE */
  section[style*="background-color: rgb(44, 26, 14)"],
  section[style*="background-color: rgb(44,26,14)"] {
    padding: 56px 24px !important;
  }
  section[style*="background-color: rgb(44, 26, 14)"] h2,
  section[style*="background-color: rgb(44,26,14)"] h2 {
    font-size: 1.6rem !important;
  }

  /* PREVENT HORIZONTAL OVERFLOW */
  section > div,
  section > div > div {
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }
}
