/* =========================================================
   UI FIX V10 — final mobile readability pass
   - Never allow text to disappear on dark/navy controls
   - WHY US phone headings visibly labeled
   - Profile facts read as hashtags, not buttons (phone only)
   - STORY key phrase in strong navy with deliberate line breaks
   - PDF price-detail CTA = yellow + black
   Loaded LAST. 2026-09-03
   ========================================================= */
:root{
  --v10-yellow:#F2B200;
  --v10-ivory:#FFF8E8;
  --v10-navy:#163F63;
  --v10-ink:#111214;
  --v10-white:#FFFFFF;
}

/* ---------- BULLETPROOF BUTTON TEXT CONTRAST ---------- */
html body a.btn.btn-primary,
html body a.btn.btn-dark,
html body button.btn-dark,
html body .header-cta,
html body .story-services-link,
html body .youtube-channel-btn,
html body.service-page .page-nav a,
html body.service-page #related-services :is(.related,.related-grid) a{
  color:var(--v10-white) !important;
  -webkit-text-fill-color:var(--v10-white) !important;
}
html body a.btn.btn-primary *,
html body a.btn.btn-dark *,
html body button.btn-dark *,
html body .header-cta *,
html body .story-services-link *,
html body .youtube-channel-btn *,
html body.service-page .page-nav a *,
html body.service-page #related-services :is(.related,.related-grid) a *{
  color:var(--v10-white) !important;
  -webkit-text-fill-color:var(--v10-white) !important;
}

html body a.btn.btn-light,
html body button.btn-light,
html body .site-menu-btn,
html body .menu-close{
  color:var(--v10-ink) !important;
  -webkit-text-fill-color:var(--v10-ink) !important;
}
html body a.btn.btn-light *,
html body button.btn-light *,
html body .site-menu-btn *,
html body .menu-close *{
  color:var(--v10-ink) !important;
  -webkit-text-fill-color:var(--v10-ink) !important;
}

/* iOS/Safari dark mode: explicit anchor glyph/text paint. */
html body :is(a.btn.btn-primary,a.btn.btn-dark,.header-cta,.story-services-link,.youtube-channel-btn)::before,
html body :is(a.btn.btn-primary,a.btn.btn-dark,.header-cta,.story-services-link,.youtube-channel-btn)::after{
  color:var(--v10-white) !important;
  -webkit-text-fill-color:var(--v10-white) !important;
}

/* ---------- HOME WHY-US: restore labels in the two dark pills ---------- */
@media(max-width:767px){
  html body.home-page #why-us .why2-mobile-headings > span{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:34px !important;
    padding:7px 10px !important;
    background:var(--v10-ink) !important;
    color:var(--v10-white) !important;
    -webkit-text-fill-color:var(--v10-white) !important;
    font-size:12px !important;
    font-weight:900 !important;
    line-height:1.25 !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  html body.home-page #why-us .why2-mobile-headings > span *{
    color:var(--v10-white) !important;
    -webkit-text-fill-color:var(--v10-white) !important;
  }
}

/* ---------- PROFILE: facts are keywords, not controls ---------- */
@media(max-width:767px){
  html body.home-page #profile .profile-points{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    gap:10px 16px !important;
    margin:18px 0 22px !important;
    padding:0 !important;
    list-style:none !important;
  }
  html body.home-page #profile .profile-points li,
  html body.home-page #profile .profile-points li:last-child:nth-child(odd){
    display:inline !important;
    flex:0 1 auto !important;
    width:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:var(--v10-white) !important;
    -webkit-text-fill-color:var(--v10-white) !important;
    font-size:14px !important;
    font-weight:850 !important;
    line-height:1.55 !important;
  }
  html body.home-page #profile .profile-points li::before{
    content:'#';
    margin-right:2px;
    color:var(--v10-white) !important;
    -webkit-text-fill-color:var(--v10-white) !important;
    font-weight:950 !important;
  }
  html body.home-page #profile .profile-details summary{
    color:var(--v10-ink) !important;
    -webkit-text-fill-color:var(--v10-ink) !important;
  }
  html body.home-page #profile .profile-details summary::after{
    color:var(--v10-ink) !important;
    -webkit-text-fill-color:var(--v10-ink) !important;
  }
}

/* ---------- STORY: the key phrase is the visual anchor ---------- */
html body.home-page #story .story-core mark{
  color:var(--v10-navy) !important;
  -webkit-text-fill-color:var(--v10-navy) !important;
  background:transparent !important;
  font-weight:950 !important;
}
@media(max-width:767px){
  html body.home-page #story .story-core{
    max-width:100% !important;
    margin-top:24px !important;
    font-size:clamp(27px,7.3vw,34px) !important;
    line-height:1.48 !important;
    letter-spacing:-.025em !important;
    text-wrap:balance !important;
  }
}

/* ---------- PRICE DETAIL: unmistakable CTA ---------- */
html body.service-page #price .price-bottom a.btn[href$=".pdf"]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:54px !important;
  padding:14px 22px !important;
  border:2px solid var(--v10-yellow) !important;
  border-radius:999px !important;
  background:var(--v10-yellow) !important;
  color:var(--v10-ink) !important;
  -webkit-text-fill-color:var(--v10-ink) !important;
  font-weight:950 !important;
  box-shadow:0 6px 0 rgba(17,18,20,.20) !important;
}
html body.service-page #price .price-bottom a.btn[href$=".pdf"] *{
  color:var(--v10-ink) !important;
  -webkit-text-fill-color:var(--v10-ink) !important;
}

/* ---------- DARK MODE: preserve the same deliberate palette ---------- */
@media(prefers-color-scheme:dark){
  html body.home-page #why-us .why2-mobile-headings > span{
    background:var(--v10-ink) !important;
    color:var(--v10-white) !important;
    -webkit-text-fill-color:var(--v10-white) !important;
  }
  html body.home-page #profile .profile-points li,
  html body.home-page #profile .profile-points li::before{
    color:var(--v10-white) !important;
    -webkit-text-fill-color:var(--v10-white) !important;
  }
  html body.home-page #story .story-core mark{
    color:var(--v10-navy) !important;
    -webkit-text-fill-color:var(--v10-navy) !important;
  }
  html body.service-page #price .price-bottom a.btn[href$=".pdf"],
  html body.service-page #price .price-bottom a.btn[href$=".pdf"] *{
    background:var(--v10-yellow) !important;
    color:var(--v10-ink) !important;
    -webkit-text-fill-color:var(--v10-ink) !important;
  }
}

/* Profile disclosure remains the unmistakable real button next to plain hashtag facts. */
@media(max-width:767px){
  html body.home-page #profile .profile-details summary{
    background:#FFFFFF !important;
    border-color:#FFFFFF !important;
    color:var(--v10-ink) !important;
    -webkit-text-fill-color:var(--v10-ink) !important;
  }
  html body.home-page #profile .profile-details summary::after{
    color:var(--v10-ink) !important;
    -webkit-text-fill-color:var(--v10-ink) !important;
  }
}
