/* Small PHP-host shell corrections layered over the compiled original stylesheet. */
.border-primary { border-color: #00652c !important; }
.page-contact .flex.items-center.gap-space-md.p-space-md.rounded-xl { min-height: 132px; padding: 1.5rem; }
.page-contact .flex.items-center.gap-space-md.p-space-md.rounded-xl .material-symbols-outlined { font-size: 28px !important; }
.skip-link { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link:focus { position: absolute; width: auto; height: auto; clip: auto; margin: 0; overflow: visible; left: 1rem; top: 1rem; z-index: 80; padding: .5rem 1rem; background: #fff; color: #00652c; }
.original-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.original-blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.original-product-grid .product-card { min-height: 34rem; }
.original-product-grid .product-card > div { height: 100%; }
#focus-section ~ section button, #focus-section + section button { position: relative; overflow: hidden; transition: background-color .25s ease, transform .25s ease, box-shadow .25s ease; }
#focus-section ~ section button:hover, #focus-section + section button:hover { background-color: #95f8a7 !important; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(0,101,44,.25); }
#focus-section ~ section button::after, #focus-section + section button::after { content: ''; position: absolute; inset: 0; transform: translateX(-110%); background: linear-gradient(105deg, transparent 30%, rgba(255,255,255,.35) 50%, transparent 70%); transition: transform .5s ease; }
#focus-section ~ section button:hover::after, #focus-section + section button:hover::after { transform: translateX(110%); }
@media (max-width: 991.98px) { .original-product-grid, .original-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767.98px) { .original-product-grid, .original-blog-grid { grid-template-columns: 1fr; } }
@media (max-width: 767.98px) { .mobile-bottom-nav { display: block; } body { padding-bottom: 4rem; } }
.portal-wrap { max-width: 820px; margin: 0 auto; padding: 1.5rem 1rem 4rem; }
.portal-wrap .eyebrow a { color: inherit; }
.admin-panel .eyebrow a { color: inherit; }
.portal-status { display: inline-block; padding: .2rem .65rem; border-radius: 999px; background: #e8f5e9; color: #00652c; font: 700 12px/1.4 Manrope, sans-serif; }
@media (min-width: 768px) {
  .site-wordmark { display: none; }
  .site-logo { height: 2.25rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  .motion-reveal { opacity: 1 !important; transform: none !important; }
}
