/* Additive styles for BC-45 and platform pages. Crane styles stay unchanged. */
.weighing-campaign { font-family: Inter, Arial, sans-serif; }
.weighing-campaign .hero-figure img { aspect-ratio: 1.28; object-fit: contain; width: 100%; }
.weighing-campaign .hero-figure { padding: 28px; }
.weighing-campaign .hero { background: linear-gradient(120deg, #edf2f8, #f8fafc); }
.weighing-campaign .hero h1 { max-width: 680px; }
.weighing-campaign .hero-figure figcaption { font-size: .82rem; line-height: 1.6; }
.weighing-campaign .section-nav { border-bottom: 1px solid var(--line); background: white; }
.weighing-campaign .section-nav .container { display: flex; gap: 8px 24px; flex-wrap: wrap; padding-block: 12px; }
.weighing-campaign .section-nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9rem; color: var(--navy); text-underline-offset: 5px; }
.weighing-campaign .feature-grid article { padding: 24px; background: white; border: 1px solid var(--line); border-top: 3px solid var(--navy); border-radius: 8px; }
.weighing-campaign .feature-index { color: #53677f; font-size: .8rem; font-weight: 700; display: block; margin-bottom: 16px; }
.weighing-campaign .spec-table th, .weighing-campaign .spec-table td { white-space: normal; overflow-wrap: anywhere; vertical-align: top; }
.weighing-campaign .spec-table th { width: 34%; }
.weighing-campaign .spec-table caption { font-size: .9rem; }
.weighing-campaign .diagram { margin: 32px 0 0; padding: 24px; border: 1px solid var(--line); border-radius: 12px; background: white; }
.weighing-campaign .diagram img { width: 100%; }
.weighing-campaign .form-grid { grid-template-columns: 1fr; }
.weighing-campaign .field input, .weighing-campaign .field select { min-height: 48px; }
.weighing-campaign .field textarea { min-height: 120px; }
.weighing-campaign .field-help { font-size: .85rem; }
.weighing-campaign .checkbox-options { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.weighing-campaign .checkbox-options label { min-height: 44px; display: flex; align-items: center; gap: 10px; font-weight: 400; margin: 0; }
.weighing-campaign .checkbox-options input { width: 20px; min-height: 20px; height: 20px; flex: none; }
.weighing-campaign .field legend { font-size: .875rem; font-weight: 600; margin-bottom: 8px; }
.weighing-campaign .consent { min-height: 44px; align-items: center; }
.weighing-campaign .consent input { width: 20px; height: 20px; flex: none; }
.weighing-campaign .quote-aside { position: sticky; top: 100px; }
.weighing-campaign .quote-aside ul { padding-left: 20px; color: var(--muted); }
.weighing-campaign .quote-aside li { margin-bottom: 14px; }
.weighing-campaign .faq summary { min-height: 44px; }
.weighing-campaign .video-link { display: block; padding: 24px; border-left: 3px solid var(--blue); background: #eff6ff; margin-top: 28px; }
.weighing-campaign .video-link a { display: inline-block; padding-block: 12px; color: var(--navy); font-weight: 600; }
.weighing-campaign .related { margin-top: 24px; }
.weighing-campaign .related a { display: inline-block; padding-block: 12px; color: var(--navy); font-weight: 600; }
.weighing-campaign .footer-grid a { display: inline-flex; min-height: 44px; align-items: center; }
.weighing-campaign .floating-wa { min-height: 44px; }
@media (max-width: 900px) { .weighing-campaign .quote-aside { position: static; } }
@media (max-width: 767px) {
  .weighing-campaign .hero-figure { padding: 20px; }
  .weighing-campaign .hero-figure img { aspect-ratio: 1.28; }
  .weighing-campaign .spec-table th, .weighing-campaign .spec-table td { padding: 14px 12px; }
  .weighing-campaign .diagram { padding: 8px; }
  .weighing-campaign .checkbox-options { grid-template-columns: 1fr; }
  .weighing-campaign .floating-wa { display: none; }
  .weighing-campaign .section { padding-block: 48px; }
}
