
:root{
  --fr-ink:#10382f;
  --fr-body:#24483f;
  --fr-muted:#45665d;
  --fr-gold:#966b16;
  --fr-green:#1e6653;
  --fr-green-dark:#154b3e;
  --fr-light:#e6f4ed;
}

/* ---------- Header / logo ---------- */
.rm-brand{min-width:210px!important}
.rm-brand-mark{
  width:210px!important;height:72px!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  overflow:visible!important;background:transparent!important;border:0!important;box-shadow:none!important
}
.rm-brand-mark img{
  width:100%!important;height:100%!important;object-fit:contain!important;
  object-position:left center!important;display:block!important
}
@media(max-width:1450px){
  .rm-brand{min-width:185px!important}
  .rm-brand-mark{width:185px!important;height:64px!important}
}
@media(max-width:900px){
  .rm-brand{min-width:155px!important}
  .rm-brand-mark{width:155px!important;height:54px!important}
}
@media(max-width:600px){
  .rm-brand{min-width:145px!important}
  .rm-brand-mark{width:145px!important;height:50px!important}
}

/* ---------- Global text readability on light green ---------- */
main, main section, main article, .contact, .about, .visage, .results,
.blog-teaser, .corps, .section, .card, .contact-card, .article-card{
  color:var(--fr-body)!important
}
main h1,main h2,main h3,main h4,main h5,main h6,
section h1,section h2,section h3,section h4,
.contact-card h3,.article-card h3{
  color:var(--fr-ink)!important;opacity:1!important;text-shadow:none!important
}
main p,section p,article p,figcaption,.caption,.lead,.subtitle,.description,
.contact-info-row span,.contact-card p,.article-card p,.med-detail p{
  color:var(--fr-body)!important;opacity:1!important
}
.contact-info-row strong,
.contact-card .phone,
.contact-card strong,
.contact-card .phone a{
  color:var(--fr-ink)!important;opacity:1!important;font-weight:800!important
}
.contact-info-row .map-link,.map-link{
  color:#704b08!important;font-weight:800!important
}
.eyebrow,.section-label,.kicker,.overline{
  color:var(--fr-gold)!important;opacity:1!important;font-weight:800!important
}

/* ---------- Buttons: guaranteed contrast ---------- */
.btn,.button,button,[role="button"]{opacity:1!important}
.btn-gold,.rm-header-whatsapp{
  background:#d8aa4f!important;color:#17382f!important;border-color:#d8aa4f!important
}
.btn-gold:hover,.rm-header-whatsapp:hover{
  background:#c99637!important;color:#102f28!important
}
.btn-outline,.rm-header-instagram{
  color:var(--fr-ink)!important;border-color:rgba(16,56,47,.32)!important
}
.article-cta a,
.blog-teaser-cta,
.cta-primary,
a[class*="primary"]{
  color:#fff!important
}
.blog-teaser-link,.read-more,.visage-link,.learn-more{
  color:#704b08!important;font-weight:800!important
}

/* ---------- Medicine / About accordions ---------- */
.med-toggle{
  width:100%!important;color:var(--fr-ink)!important;background:rgba(255,255,255,.34)!important;
  cursor:pointer!important;position:relative!important;z-index:2!important
}
.med-toggle span{color:var(--fr-ink)!important;opacity:1!important}
.med-chevron{stroke:var(--fr-ink)!important;opacity:1!important;transition:transform .25s ease!important}
.med-detail{
  display:block!important;max-height:0!important;opacity:0!important;visibility:hidden!important;
  overflow:hidden!important;transition:max-height .35s ease,opacity .25s ease!important
}
.med-item.open .med-detail{
  max-height:1200px!important;opacity:1!important;visibility:visible!important
}
.med-item.open .med-chevron{transform:rotate(180deg)!important}

/* ---------- Main treatment tabs ---------- */
.visage-panel{display:none!important}
.visage-panel.active{display:block!important}
.visage-tab{cursor:pointer!important;color:var(--fr-ink)!important}
.visage-tab.active{
  background:#c99531!important;color:#17382f!important;border-color:#c99531!important
}

/* ---------- Blog filter buttons ---------- */
.filter-pill{cursor:pointer!important;color:var(--fr-ink)!important}
.filter-pill.active{
  background:var(--fr-green)!important;color:#fff!important;border-color:var(--fr-green)!important
}
.article-card[hidden]{display:none!important}

/* ---------- Generic accordion fallback ---------- */
.accordion-content{
  color:var(--fr-body)!important
}
.accordion-header,.accordion-title,details summary{
  color:var(--fr-ink)!important;cursor:pointer!important
}

/* ---------- High contrast focus ---------- */
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:3px solid #b77c12!important;outline-offset:3px!important
}
