:root {
  --cis-green: #1f2329;
  --cis-green-dark: #121418;
  --cis-soft: #fff1e5;
  --cis-ink: #1b1d21;
  --cis-accent: #ff7a00;
}

body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: var(--cis-ink); }

.bg-cis { background-color: var(--cis-green) !important; }
.bg-cis-dark { background-color: var(--cis-green-dark) !important; }
.bg-cis-soft { background-color: var(--cis-soft) !important; }
.text-cis { color: var(--cis-green) !important; }
.text-cis-dark { color: var(--cis-green-dark) !important; }
.text-accent { color: var(--cis-accent) !important; }

.btn-cis { background-color: var(--cis-green); border-color: var(--cis-green); color: #fff; }
.btn-cis:hover, .btn-cis:focus { background-color: var(--cis-green-dark); border-color: var(--cis-green-dark); color: #fff; }
.btn-accent { background-color: var(--cis-accent); border-color: var(--cis-accent); color: #1b1d21; }
.btn-accent:hover, .btn-accent:focus { background-color: #e06a00; border-color: #e06a00; color: #fff; }

a { color: #b84f00; }
a:hover { color: #8a3b00; }

.cis-skip-link { position: absolute; left: -9999px; top: 0; background: #fff; color: #000; padding: .75rem 1rem; z-index: 2000; }
.cis-skip-link:focus { left: 0; }

.cis-hero { background: linear-gradient(135deg, var(--cis-soft) 0%, #fff 100%); border: 1px solid #ffd9b8; }
.cis-hero h1 { color: var(--cis-green-dark); }

.cis-card { border: 1px solid #e0eae4; transition: transform .15s ease, box-shadow .15s ease; }
.cis-card:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(21,96,63,.12); }
.cis-card-img { aspect-ratio: 1 / 1; object-fit: contain; background: #fff; padding: .5rem; }
.cis-grid .card-title { line-height: 1.35; }
.cis-hero-img { max-height: 420px; object-fit: contain; background: #fff; }
.cis-sidebar-sticky { position: sticky; top: 80px; }

/* Extracted legacy content -- re-skin the old Magento markup rather than fight it */
.cis-legacy-content { line-height: 1.65; }
.cis-legacy-content img { max-width: 100%; height: auto; border-radius: .4rem; }
.cis-legacy-content table { width: 100%; border-collapse: collapse; margin-bottom: 1rem; }
.cis-legacy-content table td, .cis-legacy-content table th { padding: .4rem .6rem; border-bottom: 1px solid #e9efeb; vertical-align: top; }
.cis-legacy-content h2 { font-size: 1.15rem; margin-top: 1.5rem; }
.cis-legacy-content ul { padding-left: 1.25rem; }

.cis-honeypot { position: absolute; left: -9999px; top: -9999px; }

@media (max-width: 767.98px) {
  .cis-sidebar-sticky { position: static; }
}

/* "Buy it on Amazon" affiliate card */
.cis-shop-card { border: 1px solid #e6d3a8; background: #fffdf6; }
.cis-shop-img { width: 72px; height: 72px; object-fit: contain; background: #fff; border: 1px solid #eee; border-radius: .3rem; flex-shrink: 0; }
.cis-shop-title { font-size: .9rem; font-weight: 600; line-height: 1.3; }
.cis-shop-price { font-size: 1.1rem; font-weight: 700; color: var(--cis-green-dark); margin-top: .25rem; }
.cis-shop-checked { font-size: .72rem; color: #6c757d; margin-top: .4rem; }
.cis-shop-disclosure { font-size: .7rem; color: #6c757d; margin-top: .25rem; }

/* cisport additions */
.cis-facts th { width: 38%; font-weight: 600; color: #555; }
.cis-legacy-content ul { padding-left: 1.2rem; }
