/* V18 — integrated content styling for mining-fan.com.
   Insert #dust-core-content directly after the product row.
   Do not wrap it in .row, .col-* or another .container. */

#dust-core-content {
  --dust-navy: #02185a;
  --dust-orange: #ff6119;
  --dust-text: #5f6670;
  --dust-muted: #767d87;
  --dust-line: #e5e8ed;
  --dust-soft: #f7f8fa;
  width: 100%;
  clear: both;
  margin: 42px 0 0;
  color: var(--dust-text);
  font-family: "Roboto", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.78;
}

#dust-core-content,
#dust-core-content *,
#dust-core-content *::before,
#dust-core-content *::after { box-sizing: border-box; }

#dust-core-content [id] { scroll-margin-top: 110px; }

#dust-core-content p,
#dust-core-content dd {
  margin: 0;
  color: var(--dust-text);
  font: inherit;
  line-height: 1.78;
  text-align: left;
}

#dust-core-content h2,
#dust-core-content h3,
#dust-core-content h4,
#dust-core-content dt,
#dust-core-content .dust-number,
#dust-core-content .dust-method-label,
#dust-core-content .dust-group-heading span {
  font-family: "Poppins", "Roboto", Arial, sans-serif;
}

#dust-core-content h2,
#dust-core-content h3,
#dust-core-content h4 {
  margin: 0;
  color: var(--dust-navy);
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
}

#dust-core-content a {
  color: var(--dust-navy);
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: #bcc3ce;
  text-underline-offset: 3px;
}
#dust-core-content a:hover { text-decoration-color: currentColor; }
#dust-core-content a:focus-visible { outline: 2px solid var(--dust-navy); outline-offset: 3px; }

#dust-core-content .dust-section {
  width: 100%;
  margin: 0;
  padding: 52px 0;
  border-top: 1px solid var(--dust-line);
}
#dust-core-content .dust-section:first-child { padding-top: 0; border-top: 0; }
#dust-core-content .dust-section:last-child { padding-bottom: 4px; }

#dust-core-content .dust-section-heading {
  max-width: 920px;
  margin: 0 auto 30px;
  text-align: center;
}
#dust-core-content .dust-section-heading h2 {
  font-size: 30px;
  line-height: 1.32;
}
#dust-core-content .dust-heading-line {
  display: block;
  width: 46px;
  height: 3px;
  margin: 14px auto 0;
  background: var(--dust-orange);
}
#dust-core-content .dust-section-heading p {
  margin-top: 17px;
  color: var(--dust-muted);
  text-align: center;
}

/* Operating principle */
#dust-core-content .dust-method-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}
#dust-core-content .dust-method-card {
  min-width: 0;
  padding: 26px 28px 27px;
  border: 1px solid var(--dust-line);
  border-top: 3px solid var(--dust-orange);
  background: #fff;
}
#dust-core-content .dust-method-label,
#dust-core-content .dust-group-heading span {
  display: block;
  margin: 0 0 7px;
  color: var(--dust-orange);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .035em;
  text-transform: uppercase;
}
#dust-core-content .dust-method-card h3,
#dust-core-content .dust-group-heading h3 {
  font-size: 21px;
  line-height: 1.4;
}
#dust-core-content .dust-method-copy { margin-top: 15px; }
#dust-core-content .dust-method-copy p + p { margin-top: 13px; }

/* Application groups are stacked; each group is internally symmetric. */
#dust-core-content .dust-application-group,
#dust-core-content .dust-selection-group {
  margin-top: 28px;
  border: 1px solid var(--dust-line);
  background: #fff;
}
#dust-core-content .dust-application-group:first-of-type,
#dust-core-content .dust-selection-group:first-of-type { margin-top: 0; }

#dust-core-content .dust-group-heading {
  padding: 20px 24px 18px;
  border-left: 4px solid var(--dust-orange);
  border-bottom: 1px solid var(--dust-line);
  background: var(--dust-soft);
}

#dust-core-content .dust-application-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
#dust-core-content .dust-application-item {
  position: relative;
  min-width: 0;
  padding: 22px 22px 23px;
  border-right: 1px solid var(--dust-line);
  border-bottom: 1px solid var(--dust-line);
}
#dust-core-content .dust-application-item:nth-child(3n) { border-right: 0; }
#dust-core-content .dust-application-item:nth-last-child(-n+3) { border-bottom: 0; }
#dust-core-content .dust-number {
  display: block;
  margin: 0 0 8px;
  color: var(--dust-orange);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
#dust-core-content .dust-application-item h4 {
  margin: 0 0 8px;
  font-size: 16px;
  line-height: 1.45;
}
#dust-core-content .dust-related {
  margin-top: 22px;
  padding: 14px 18px;
  border-left: 3px solid var(--dust-orange);
  background: var(--dust-soft);
  font-size: 14px;
}

/* Selection */
#dust-core-content .dust-selection-grid {
  display: grid;
  margin: 0;
  padding: 0;
}
#dust-core-content .dust-selection-grid-six,
#dust-core-content .dust-selection-grid-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
#dust-core-content .dust-selection-item {
  min-width: 0;
  padding: 20px 21px 21px;
  border-right: 1px solid var(--dust-line);
  border-bottom: 1px solid var(--dust-line);
}
#dust-core-content .dust-selection-grid-six .dust-selection-item:nth-child(3n),
#dust-core-content .dust-selection-grid-three .dust-selection-item:nth-child(3n) { border-right: 0; }
#dust-core-content .dust-selection-grid-six .dust-selection-item:nth-last-child(-n+3),
#dust-core-content .dust-selection-grid-three .dust-selection-item:nth-last-child(-n+3) { border-bottom: 0; }
#dust-core-content .dust-selection-item dt {
  margin: 0 0 7px;
  color: var(--dust-navy);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
}
#dust-core-content .dust-selection-item dd { font-size: 15px; }
#dust-core-content .dust-selection-note {
  margin: 0;
  padding: 15px 18px;
  border-top: 1px solid var(--dust-line);
  border-left: 3px solid var(--dust-orange);
  background: #fff8f4;
  font-size: 14px;
}
#dust-core-content .dust-selection-note strong {
  color: var(--dust-navy);
  font-weight: 600;
}
#dust-core-content .dust-selection-inner { padding-top: 0; }
#dust-core-content .dust-fog-intro,
#dust-core-content .dust-fog-tail {
  padding: 16px 21px;
}
#dust-core-content .dust-fog-intro { border-bottom: 1px solid var(--dust-line); }
#dust-core-content .dust-fog-tail { border-top: 1px solid var(--dust-line); }

/* Page-level structural fixes for the existing product grid. */
.shop .dust-product-row { justify-content: center; }
.shop .dust-product-row > [class*="col-"] { display: flex; }
.shop .dust-product-row .single-product-item {
  display: flex;
  width: 100%;
  flex-direction: column;
}
.shop .dust-product-row .img-product {
  display: flex;
  width: 100%;
  aspect-ratio: 4 / 3;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #f7f8fa;
}
.shop .dust-product-row .img-product a { display: block; width: 100%; height: 100%; }
.shop .dust-product-row .img-product img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.shop .dust-product-row .content-products {
  display: flex;
  min-height: 82px;
  flex: 1;
  align-items: center;
  padding: 18px 20px;
}
.shop .dust-product-row .content-products h4 { margin: 0; line-height: 1.45; }

@media (max-width: 991px) {
  #dust-core-content { margin-top: 34px; }
  #dust-core-content .dust-section { padding: 44px 0; }
  #dust-core-content .dust-section-heading h2 { font-size: 27px; }
  #dust-core-content .dust-method-grid { grid-template-columns: 1fr; }
  #dust-core-content .dust-application-grid,
  #dust-core-content .dust-selection-grid-six,
  #dust-core-content .dust-selection-grid-three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #dust-core-content .dust-application-item:nth-child(3n),
  #dust-core-content .dust-selection-item:nth-child(3n) { border-right: 1px solid var(--dust-line); }
  #dust-core-content .dust-application-item:nth-child(2n),
  #dust-core-content .dust-selection-item:nth-child(2n) { border-right: 0; }
  #dust-core-content .dust-application-item:nth-last-child(-n+3),
  #dust-core-content .dust-selection-item:nth-last-child(-n+3) { border-bottom: 1px solid var(--dust-line); }
  #dust-core-content .dust-application-item:nth-last-child(-n+2),
  #dust-core-content .dust-selection-grid-six .dust-selection-item:nth-last-child(-n+2) { border-bottom: 0; }
  #dust-core-content .dust-selection-grid-three .dust-selection-item:last-child {
    grid-column: 1 / -1;
    border-right: 0;
    border-bottom: 0;
  }
}

@media (max-width: 767px) {
  #dust-core-content {
    margin-top: 26px;
    font-size: 14px;
    line-height: 1.74;
  }
  #dust-core-content .dust-section { padding: 36px 0; }
  #dust-core-content .dust-section-heading { margin-bottom: 24px; text-align: left; }
  #dust-core-content .dust-section-heading h2 { font-size: 23px; line-height: 1.38; text-align: left; }
  #dust-core-content .dust-heading-line { width: 40px; height: 2px; margin: 11px 0 0; }
  #dust-core-content .dust-section-heading p { margin-top: 14px; text-align: left; }
  #dust-core-content .dust-method-card { padding: 21px 19px 22px; }
  #dust-core-content .dust-method-card h3,
  #dust-core-content .dust-group-heading h3 { font-size: 18px; }
  #dust-core-content .dust-group-heading { padding: 17px 18px 16px; }
  #dust-core-content .dust-application-grid,
  #dust-core-content .dust-selection-grid-six,
  #dust-core-content .dust-selection-grid-three { grid-template-columns: 1fr; }
  #dust-core-content .dust-application-item,
  #dust-core-content .dust-selection-item {
    padding: 18px;
    border-right: 0 !important;
    border-bottom: 1px solid var(--dust-line) !important;
  }
  #dust-core-content .dust-application-item:last-child,
  #dust-core-content .dust-selection-item:last-child { border-bottom: 0 !important; }
  #dust-core-content .dust-selection-grid-three .dust-selection-item:last-child { grid-column: auto; }
  #dust-core-content .dust-application-item h4 { font-size: 15px; }
  #dust-core-content .dust-selection-item dt,
  #dust-core-content .dust-selection-item dd { font-size: 14px; }
  #dust-core-content .dust-fog-intro,
  #dust-core-content .dust-fog-tail { padding: 14px 18px; }
}

