/* ===========================
   TOKENS / GLOBAL
   =========================== */
:root{
  --ink:#120B19;          /* body text */
  --soft:#5B4B6E;         /* muted text */
  --gold:#D9B26D;         /* accent */
}
html, body { color: var(--ink); }

/* ===========================
   HOMEPAGE CTA STRIP
   (scoped so it won't leak elsewhere)
   =========================== */
.was-home .cta-strip{
  position:relative;
  background:linear-gradient(135deg,#3F2451,#4A2B5D);
  padding:22px 0; text-align:center; color:#fff; margin-top:28px;
}
.was-home .cta-strip .cta-link{ position:absolute; inset:0; z-index:1; }
.was-home .cta-inner{ position:relative; z-index:2; display:flex; flex-direction:column; align-items:center; gap:12px; }
.was-home .cta-inner p{ margin:0; font-size:18px; font-weight:500; color:#fff; }
.was-home .cta-inline{ color:var(--gold); font-weight:600; text-decoration:none; border-bottom:1px dashed rgba(217,178,109,.6); }
.was-home .cta-inline:hover{ color:#fff; border-bottom-color:#fff; }
.was-home .cta-strip .btn.gold{ background:var(--gold); color:var(--ink); border:none; }
.was-home .cta-strip .btn.gold:hover{ background:#e5c780; }

/* ===========================
   MENU HIGHLIGHT
   =========================== */
.current-menu-item > a{
  background:#5A2A7A; color:#FFD700; border-radius:8px; padding:6px 12px; transition:.3s;
}
.current-menu-item > a:hover{ box-shadow:0 0 10px rgba(255,215,0,.6); }

/* ===========================
   CANDLES — READABILITY
   =========================== */
.saints-candles .card,
.saints-candles .card *,
.saints-candles .muted,
.saints-candles .note{
  color:#fff !important; opacity:1 !important;
}
.saints-candles .card a{ color:#fff !important; text-decoration:underline; }

/* ===========================
   TRIBUTE HEADER
   =========================== */
.tribute-header{
  background: linear-gradient(90deg,#0057A0,#007ACC);
  color:#fff; padding:2rem 1rem; text-align:center;
  border-bottom:4px solid #fff; box-shadow:0 4px 6px rgba(0,0,0,.1);
}
.header-content h1{
  font-family:'Roboto',sans-serif; font-size:2.5rem; font-weight:700;
  margin:0; letter-spacing:.5px; text-transform:uppercase;
}
.subtext{
  font-family:'Roboto',sans-serif; font-size:1.2rem; font-weight:400; margin-top:.5rem; opacity:.9;
}

/* ===========================
   MOBILE: back-to-top spacing (avoid Quick Exit)
   =========================== */
@media (max-width:768px){
  .scroll-to-top, #scroll-top, .back-to-top, .scrolltop, .totop, .toTopBtn{
    right:16px !important; bottom:76px !important; z-index:2147483645 !important;
  }
}

/* ===========================
   HEADER CTAs (Aardvark/GhostPool/Divi friendly)
   =========================== */
.site-header .menu > li.push-right,
.header .menu > li.push-right,
.main-navigation .menu > li.push-right,
.gp-header .menu > li.push-right { margin-left: auto; }

/* Space CTAs that follow the push-right item */
.site-header .menu > li.push-right ~ li.cta > a,
.header .menu > li.push-right ~ li.cta > a,
.main-navigation .menu > li.push-right ~ li.cta > a,
.gp-header .menu > li.push-right ~ li.cta > a { margin-left: 10px; }

/* Outline CTA (gold text, transparent bg) */
header nav .menu li.cta > a,
.site-header nav .menu li.cta > a,
#site-navigation .menu li.cta > a,
.gp-header .menu li.cta > a,
.main-navigation .menu li.cta > a {
  display:inline-block !important;
  padding:10px 14px !important;
  line-height:1.1 !important;
  border-radius:999px !important;
  font-weight:800 !important;
  border:2px solid var(--gold) !important;
  color:var(--gold) !important;
  background:transparent !important;
  text-decoration:none !important;
}

/* Solid CTA (add class "cta-solid" to the menu item) */
header nav .menu li.cta.cta-solid > a,
.site-header nav .menu li.cta.cta-solid > a,
#site-navigation .menu li.cta.cta-solid > a,
.gp-header .menu li.cta.cta-solid > a,
.main-navigation .menu li.cta.cta-solid > a {
  background:var(--gold) !important;
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important; /* Safari */
  border-color:var(--gold) !important;
}

/* Hover/Focus (header CTAs) */
header nav .menu li.cta > a:hover,
header nav .menu li.cta > a:focus-visible,
.site-header .menu li.cta > a:hover,
.main-navigation .menu li.cta > a:hover,
.gp-header .menu li.cta > a:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
}

/* Mobile: full-width tap targets; no push-right */
@media (max-width:980px){
  .site-header .menu > li.push-right,
  .header .menu > li.push-right,
  .main-navigation .menu > li.push-right,
  .gp-header .menu > li.push-right { margin-left: 0; }

  header nav .menu li.cta > a,
  .site-header .menu li.cta > a,
  .main-navigation .menu li.cta > a,
  .gp-header .menu li.cta > a {
    display:block !important; text-align:center; margin:10px 0;
  }
}

/* ===========================
   COMPACT HEADER FOR LAPTOP WIDTHS
   =========================== */
@media (max-width:1320px){
  .site-header .menu > li > a,
  .header .menu > li > a,
  .main-navigation .menu > li > a {
    padding:10px 10px !important;
    font-size:15px !important;
    white-space:nowrap;
  }
  .site-header .menu > li,
  .header .menu > li,
  .main-navigation .menu > li { margin:0 2px !important; }

  .site-header .menu > li.cta > a,
  .header .menu > li.cta > a,
  .main-navigation .menu > li.cta > a {
    padding:9px 12px !important;
    font-weight:800 !important;
  }

  .site-branding img,
  .logo img { max-height:44px; height:auto; }
}
@media (max-width:1200px){
  .site-header .menu > li > a,
  .header .menu > li > a,
  .main-navigation .menu > li > a {
    padding:8px 8px !important;
    font-size:14px !important;
  }
  .site-header .menu > li.cta > a,
  .header .menu > li.cta > a,
  .main-navigation .menu > li.cta > a { padding:8px 10px !important; }
}

/* ===========================
   PAGE CONTENT BUTTON CONTRAST (uniform & strong)
   - Filled PURPLE (non-gold) => white text
   - Filled GOLD => dark text
   - Header CTAs are NOT targeted here
   =========================== */

/* Common scopes where you paste raw HTML */
:where(.entry-content,.was-home,.saints-about,.was-form) :is(.btn,.saints-btn,.wp-block-button__link,.wp-element-button,.et_pb_button):not(.btn-outline):not(.ghost):not(.is-style-outline):not(.gold){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important; /* Safari fix */
  text-shadow:none !important;
}

/* Gold (filled) keep dark text */
:where(.entry-content,.was-home,.saints-about,.was-form) :is(.btn.gold,.saints-btn.gold,.wp-block-button__link.has-background,.wp-element-button.has-background){
  color:var(--ink) !important;
  -webkit-text-fill-color:var(--ink) !important;
}

/* Gutenberg special: non-outline button without explicit text color */
:where(.entry-content,.was-home,.saints-about,.was-form) .wp-element-button:not(.is-style-outline):not(.has-text-color){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Divi: ensure filled buttons read white if not gold */
:where(.entry-content,.was-home,.saints-about,.was-form) .et_pb_button:not(.et_pb_button_outline):not(.gold){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
