/* Custom classes generated from inline styles and small enhancements.
   Tip: You can regroup or rename these later to something semantic. */
.u-s1{background-image: url('assets/img/breadcrumb.png');}
.u-s2{border:0;}
.u-s3{color: #e67170 !important;
	font-weight: bold;
}
.u-s4{position:fixed;width:60px;height:60px;bottom:.8rem;right:.8rem;background-color:#25d366;color:#FFF;border-radius:50px;text-align:center;font-size:30px;box-shadow: 1px 1px 2px #888;z-index:1000;transition: all .2s ease-in-out;}
.u-s5{margin-top:16px;}
.u-s6{background-image: url('assets/img/hero/hero-4-bg.jpg');}
.u-s7{background-image: url('assets/img/cta/cta-bg.jpg');}
.u-s8{background-image: url('assets/img/video-bg.png');}
.u-s9{background-image: url('assets/img/cta-offer-bg.jpg');}
.u-s10{background-image: url('assets/img/news/04.jpg');}
.u-s11{background-image: url('assets/img/news/05.jpg');}
.u-s12{background-image: url('assets/img/news/06.jpg');}
.u-s13{background-image: url('assets/img/news/post-4.jpg');}


/* A11y: focus-visible styles */
:focus-visible { outline: 3px solid #000; outline-offset: 2px; }
a:focus-visible, button:focus-visible, [role="button"]:focus-visible { outline: 3px solid #000; outline-offset: 2px; }
.btn:focus-visible { box-shadow: 0 0 0 4px rgba(0,0,0,.2); }
/* Skip link */
.skip-link{ position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden; }
.skip-link:focus{ position:static; width:auto; height:auto; padding:.5rem 1rem; background:#fff; border:2px solid #000; border-radius:8px; z-index:9999; }



/* === WCAG AA Contrast Overrides === */
:root{
  --text:#6a7340;
  --muted:#555555;
  --link:#0a4bff;
  --link-visited:#5a32b5;
  --btn-bg:#6a7340;       /* close to bootstrap primary but darker */
  --btn-text:#ffffff;
  --btn-hover:#6a7340;
  --btn-outline:#6a7340;
  --header-text:#111111;
  --footer-text:#1a1a1a;
}

/* Base text & links 
body{color:var(--text);}
a{color:var(--link); text-decoration:underline;}
a:visited{color:var(--link-visited);}
a:hover,a:focus{ text-decoration:underline; }*/

/* Muted text */
.text-muted, .muted, small, .small { color: var(--muted) !important; }

/* Buttons (common classes) */
.btn, .btn-primary, .theme-btn, .primary-btn, .header-btn, .footer-btn, .site-btn{
  background: var(--btn-bg) !important;
  color: var(--btn-text) !important;
  border-color: var(--btn-bg) !important;
}
.btn:hover, .btn:focus,
.btn-primary:hover, .btn-primary:focus,
.theme-btn:hover, .theme-btn:focus,
.primary-btn:hover, .primary-btn:focus,
.header-btn:hover, .header-btn:focus,
.footer-btn:hover, .footer-btn:focus,
.site-btn:hover, .site-btn:focus{
  background: var(--btn-hover) !important;
  border-color: var(--btn-hover) !important;
}

/* Outline buttons */
.btn-outline, .btn-outline-primary, .outline-btn{
  color: var(--btn-outline) !important;
  border-color: var(--btn-outline) !important;
}
.btn-outline:hover, .btn-outline:focus,
.btn-outline-primary:hover, .btn-outline-primary:focus,
.outline-btn:hover, .outline-btn:focus{
  background: var(--btn-outline) !important;
  color: #fff !important;
}

/* Header/Footer text contrast */
header, .header, .site-header { color: var(--header-text); }
footer, .footer, .site-footer { color: var(--footer-text); }

/* Cards & overlays text ensure readable */
.card, .feature, .box, .overlay-text {
  color: var(--text);
}

/* Inputs contrast */
input, select, textarea {
  color: var(--text);
  border-color: #333 !important;
}
input::placeholder, textarea::placeholder { color: #666; }

/* Forced-colors and prefers-contrast support */
@media (forced-colors: active) {
  a { text-decoration: underline; }
  .btn, .btn-primary { border: 1px solid ButtonText; }
}

