/* === Marvelous Creations — universal system overrides ===
   Catches every per-page prefix variant via attribute selectors.
   Edit this ONE file → all 16 pages update.

   Sections:
   1) Reveal-animation no-script fallback
   2) Mobile header tuning (bigger logo + hamburger + persistent header)
   3) Compact mobile menu card design
*/

/* ───────────────────────────────────────────────
   1) REVEAL FALLBACK — no JS / scripting:none
─────────────────────────────────────────────── */
@media (scripting: none) {
  [data-reveal], [data-bb-reveal], [data-bl-reveal], [data-fc-reveal],
  [data-rev], [data-lp-reveal], [data-mb-reveal], [data-ds-reveal],
  [data-corp-reveal], [data-dn-reveal], [data-ps-reveal], [data-mc-reveal],
  [data-reveal-img], [data-split] {
    opacity: 1 !important; transform: none !important; filter: none !important;
  }
}

/* ───────────────────────────────────────────────
   2) MOBILE HEADER TUNE — universal
─────────────────────────────────────────────── */
@media (max-width: 1100px) {
  /* Bigger brand wordmark */
  .mc-brand, .bb-brand, .bl-brand, .dn-brand, .lp-brand, .ps-brand,
  .fc-brand, .mb-brand, .corp-brand, .ds-brand,
  [class*="brand"][class*="-wordmark"] {
    font-size: 30px !important;
    letter-spacing: -.025em !important;
  }
  .mc-brand small, .bb-brand small, .bl-brand small, .dn-brand small,
  .lp-brand small, .ps-brand small, .fc-brand small, .mb-brand small,
  .corp-brand small, .ds-brand small {
    font-size: 11.5px !important;
    letter-spacing: .22em !important;
    margin-top: 3px !important;
  }
  /* Bigger hamburger */
  .mc-menu-btn, .bb-menu-btn, .bl-menu-btn, .dn-menu-btn, .lp-menu-btn,
  .ps-menu-btn, .fc-menu-btn, .mb-menu-btn, .corp-menu-btn, .ds-menu-btn,
  [class*="menu-btn"], [class*="hamburger"] {
    width: 54px !important;
    height: 50px !important;
    border-radius: 12px !important;
  }
  [class*="menu-btn"] span, [class*="hamburger"] span {
    height: 1.6px !important;
    border-radius: 1px !important;
  }
  /* Header persistent */
  .mc-header, .bb-header, .bl-header, .dn-header, .lp-header,
  .ps-header, .fc-header, .mb-header, .corp-header, .ds-header,
  [class*="-header"][class$="header"] {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
  }
  body { padding-top: 70px !important; }
}

/* ───────────────────────────────────────────────
   3) COMPACT MOBILE MENU CARD
─────────────────────────────────────────────── */
[id*="mobile-nav"], [id*="mobile-menu"], .mc-nav__mobile {
  position: fixed !important;
  top: clamp(78px, 14vw, 96px) !important;
  left: 12px !important;
  right: 12px !important;
  bottom: auto !important;
  height: auto !important;
  max-height: calc(100vh - 110px) !important;
  width: calc(100vw - 24px) !important;
  border-radius: 18px !important;
  border: 1px solid rgba(232,194,192,.45) !important;
  box-shadow: var(--mc-shadow-pop, 0 24px 60px rgba(9,7,4,.55), 0 8px 22px rgba(9,7,4,.35)) !important;
  padding: 10px 0 !important;
  overflow-y: auto !important;
  background: linear-gradient(180deg, #fff8ef 0%, #fbf1e8 100%) !important;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}

/* Top-level links */
[id*="mobile-nav"] a, [id*="mobile-menu"] a, .mc-nav__mobile a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 14px 22px !important;
  font-family: var(--mc-display, "Cormorant Garamond", Georgia, serif) !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: -.005em !important;
  color: #241915 !important;
  border-bottom: 1px solid rgba(36,25,21,.08) !important;
  text-decoration: none !important;
  transition: background .15s ease !important;
}
[id*="mobile-nav"] a::after, [id*="mobile-menu"] a::after, .mc-nav__mobile a::after {
  content: "" !important;
  width: 8px; height: 8px;
  border-right: 1.5px solid rgba(36,25,21,.4);
  border-top: 1.5px solid rgba(36,25,21,.4);
  transform: rotate(45deg);
  margin-left: 12px;
}
[id*="mobile-nav"] a:hover, [id*="mobile-menu"] a:hover, .mc-nav__mobile a:hover {
  background: rgba(232,194,192,.22) !important;
}
[id*="mobile-nav"] a:last-child, [id*="mobile-menu"] a:last-child, .mc-nav__mobile a:last-child {
  border-bottom: none !important;
}

/* Sub-items */
[id*="mobile-nav"] a.sub, [id*="mobile-menu"] a.sub, .mc-nav__mobile a.sub {
  justify-content: flex-start !important;
  font-family: var(--mc-body, "Libre Franklin", system-ui, sans-serif) !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  padding: 9px 22px 9px 38px !important;
  color: rgba(36,25,21,.62) !important;
  border-bottom: 1px solid rgba(36,25,21,.04) !important;
}
[id*="mobile-nav"] a.sub::after, [id*="mobile-menu"] a.sub::after, .mc-nav__mobile a.sub::after {
  display: none !important;
}
[id*="mobile-nav"] a.sub::before, [id*="mobile-menu"] a.sub::before {
  content: "" !important;
  width: 14px; height: 1px;
  background: rgba(36,25,21,.35);
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
}
[id*="mobile-nav"] li, [id*="mobile-menu"] li, .mc-nav__mobile li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
[id*="mobile-nav"]::-webkit-scrollbar, [id*="mobile-menu"]::-webkit-scrollbar { width: 4px; }
[id*="mobile-nav"]::-webkit-scrollbar-thumb, [id*="mobile-menu"]::-webkit-scrollbar-thumb {
  background: rgba(36,25,21,.2); border-radius: 4px;
}

/* ───────────────────────────────────────────────
   4) STICKY CTA — universal (added 2026-04-28)
─────────────────────────────────────────────── */
.mc-sticky-cta {
  position: fixed;
  left: 50%;
  bottom: 18px;
  z-index: 60;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 8px 8px 16px;
  background: rgba(18,13,8,.92);
  border: 1px solid var(--mc-line-h, rgba(232,194,192,.32));
  border-radius: 999px;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  box-shadow: 0 20px 60px rgba(0,0,0,.32);
  transform: translate(-50%, 130%);
  opacity: 0;
  transition: transform .26s cubic-bezier(.22,1,.36,1), opacity .26s ease;
}
.mc-sticky-cta.visible { transform: translate(-50%, 0); opacity: 1; }
.mc-sticky-cta > span {
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: .07em;
  color: rgba(251,241,232,.64);
  white-space: nowrap;
}
.mc-sticky-cta a.mc-btn {
  min-height: 38px;
  padding: 0 16px;
  font-size: 11px;
}
@media (max-width: 680px) {
  .mc-sticky-cta {
    left: 12px; right: 12px; bottom: 12px;
    transform: translateY(130%);
    justify-content: space-between;
  }
  .mc-sticky-cta.visible { transform: translateY(0); }
}
