.calc-btn {
      display: block; width: 100%;
      padding: .875rem;
      margin-top: 1.25rem;
      background: var(--blue);
      color: white;
      border: none; border-radius: var(--radius);
      font-size: 1rem; font-weight: 700;
      cursor: pointer; letter-spacing: .01em;
      transition: background .15s, transform .1s;
      font-family: var(--font);
      text-decoration: none;
      text-align: center;
    }
.rec-box {
      border-radius: var(--radius);
      padding: 1.25rem 1.5rem;
      margin-bottom: 1.5rem;
    }
.rec-box.bags {
      background: var(--green-light);
      border: 1.5px solid var(--green-border);
    }
.rec-box.readymix {
      background: var(--amber-light);
      border: 1.5px solid var(--amber-border);
    }
.rec-title {
      font-size: .7rem; font-weight: 800;
      text-transform: uppercase; letter-spacing: .07em;
      margin-bottom: .5rem;
    }
.rec-box.bags .rec-title   { color: var(--green); }
.rec-box.readymix .rec-title { color: var(--amber); }
.rec-text {
      font-size: .9375rem; line-height: 1.6;
      color: var(--text); font-weight: 500;
    }
.comparison-table {
      width: 100%; border-collapse: collapse;
      font-size: .875rem; margin-top: .75rem;
    }
.comparison-table th {
      padding: .5rem .75rem;
      font-size: .7rem; font-weight: 700;
      text-transform: uppercase; letter-spacing: .04em;
      color: var(--text-muted);
      background: var(--bg-subtle);
      border: 1px solid var(--border);
      text-align: left;
    }
.comparison-table td {
      padding: .625rem .75rem;
      border: 1px solid var(--border);
      vertical-align: top; line-height: 1.5;
    }
.comparison-table tr:nth-child(even) td { background: var(--bg-soft); }
.ck  { color: var(--green); font-weight: 700; }
.cx  { color: var(--red);   font-weight: 700; }
@media (max-width: 580px) {
      .wrap { padding: 1.5rem 1rem 3.5rem; }
      .page-header h1 { font-size: 1.5rem; }
      .secondary-results { grid-template-columns: 1fr 1fr; }
      .r-tile:last-child { grid-column: 1 / -1; }
      .related-grid { grid-template-columns: 1fr; }
      .comparison-table { font-size: .78rem; }
      .ex-steps .sl { min-width: 110px; }
      nav { gap: 1rem; }
      .nav-links { gap: 1rem; }
    }
