/* Compact product copy and one shared set of characteristics. */
.amg-single-product__details {
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 24px;
  padding: 24px;
}
.amg-single-product__details .amg-single-product__panel { padding: 24px; border-radius: 20px; }
.amg-single-product__details-main { display: grid; gap: 20px; }
.amg-single-product__details .amg-single-product__section-title { margin-bottom: 16px; font-size: 22px; line-height: 1.3; }
.amg-single-product__details-side .amg-single-product__support-link { gap: 8px; min-width: 0; font-size: 13px; }
.amg-single-product__details-side .amg-single-product__support-icon { flex: 0 0 28px; width: 28px; height: 28px; border-radius: 9px; }
.amg-single-product__details-side .amg-single-product__support-link > span:last-child { min-width: 0; overflow-wrap: anywhere; }
.amg-single-product__description.entry-content { display: block; font-size: 15px; line-height: 1.6; }
.amg-single-product__description.entry-content > p { margin: 0 0 12px; }
.amg-single-product__description.entry-content > h2,
.amg-single-product__description.entry-content > h3,
.amg-single-product__description.entry-content > h4 { margin: 20px 0 10px; font-size: 19px; line-height: 1.35; }
.amg-single-product__description.entry-content > ul,
.amg-single-product__description.entry-content > ol { margin: 0 0 14px; padding-left: 20px; }
.amg-single-product__description.entry-content li + li { margin-top: 4px; }
.amg-single-product__description.entry-content > :first-child { margin-top: 0; }
.amg-single-product__description.entry-content > :last-child { margin-bottom: 0; }
.amg-single-product__description.entry-content p:empty { display: none; }
.amg-product-facts { margin: 0; border-top: 0; }
.amg-product-roi-specs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0 0 12px; }
.amg-product-roi-specs > div { min-width: 0; padding: 12px; border: 1px solid #e4e9de; border-radius: 12px; background: #f7f9f3; }
.amg-product-roi-specs dt { margin: 0 0 4px; color: #626c61; font-size: 12px; line-height: 1.4; }
.amg-product-roi-specs dd { min-width: 0; margin: 0; color: #202b21; font-size: 17px; line-height: 1.4; overflow-wrap: anywhere; }
.amg-product-roi-specs strong { font-weight: 650; font-variant-numeric: tabular-nums; }
.amg-product-facts [hidden] { display: none; }
.amg-product-roi-specs .amg-single-product-roi__manual input { min-height: 44px; font-size: 16px; }
.amg-product-roi-specs .amg-single-product-roi__manual em { color: #626c61; font-size: 12px; }
.amg-product-facts > h3 { margin: 0 0 12px; color: #202b21; font-size: 19px; line-height: 1.35; }
.amg-product-facts table.woocommerce-product-attributes { display: block; width: 100%; margin: 0; border: 0; border-spacing: 0; }
.amg-product-facts .woocommerce-product-attributes tbody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; }
.amg-product-facts .woocommerce-product-attributes tr { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 12px; min-width: 0; padding: 10px 0; border-bottom: 1px solid #edf0e9; }
.amg-product-facts .woocommerce-product-attributes th,
.amg-product-facts .woocommerce-product-attributes td { display: block; min-width: 0; width: auto; padding: 0; border: 0; background: transparent; text-align: left; vertical-align: top; font-size: 14px; font-style: normal; line-height: 1.5; overflow-wrap: anywhere; }
.amg-product-facts .woocommerce-product-attributes th { color: #626c61; font-size: 13px; font-weight: 500; }
.amg-product-facts .woocommerce-product-attributes td { color: #1f2937; font-weight: 500; }
.amg-product-facts .woocommerce-product-attributes tr.amg-product-facts__wide { grid-column: 1 / -1; grid-template-columns: minmax(0, .475fr) minmax(0, 1.525fr); }
.amg-product-facts .woocommerce-product-attributes td p { margin: 0; padding: 0; }
.amg-product-facts .woocommerce-product-attributes caption { display: none; }
.amg-product-facts__detail { display: block; margin-top: 3px; color: #626c61; font-size: 12px; font-weight: 400; }
.amg-product-facts__note { margin: 10px 0 0; color: #626c61; font-size: 12px; line-height: 1.5; }
/* Nominal offer data stays last, after the shared characteristics. */
.amg-offer-specs {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid #e3e8dd;
}
.amg-offer-specs h3 { margin: 0 0 12px; font-size: 19px; line-height: 1.35; }
.amg-offer-specs__scroll { width: 100%; overflow-x: auto; }
.amg-offer-specs table {
  width: 100%;
  margin: 0;
  border: 1px solid #dfe5d9;
  border-spacing: 0;
  border-collapse: separate;
  border-radius: 12px;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.5;
}
.amg-offer-specs th,
.amg-offer-specs td { padding: 10px 12px; text-align: left; vertical-align: top; }
.amg-offer-specs thead th { background: #f1f5e9; color: #334627; font-weight: 600; }
.amg-offer-specs tbody tr + tr > * { border-top: 1px solid #e3e8dd; }
.amg-offer-specs tbody tr:nth-child(even) { background: #fafbf8; }
.amg-offer-specs tbody th { width: 38%; color: #202a1c; font-weight: 600; }
.amg-offer-specs__number { white-space: nowrap; font-variant-numeric: tabular-nums; }
.amg-offer-specs__sources { min-width: 130px; }
.amg-offer-specs__sources a { display: inline-block; margin: 0 10px 4px 0; text-decoration: underline; text-underline-offset: 3px; }
.amg-offer-specs__sources a:focus-visible { outline: 2px solid #5d852a; outline-offset: 3px; }
.amg-offer-specs__note,
.amg-offer-specs__method { display: block; color: #66705e; font-size: 13px; line-height: 1.5; }
.amg-offer-specs__note { margin: 10px 0 0; }
.amg-offer-specs__method { margin-top: 5px; white-space: normal; }
@media (max-width: 980px) {
  .amg-single-product__details { grid-template-columns: minmax(0, 1fr); padding: 18px 0; }
  .amg-single-product__details-side { position: static; }
}
@media (max-width: 640px) {
  .amg-product-roi-specs { gap: 8px; }
  .amg-product-roi-specs > div { padding: 10px; }
  .amg-product-roi-specs dd { font-size: 15px; }
  .amg-product-roi-specs:has(.amg-single-product-roi__manual:not([hidden])) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amg-product-roi-specs:has(.amg-single-product-roi__manual:not([hidden])) > div:last-child { grid-column: 1 / -1; }
  .amg-single-product__details .amg-single-product__panel { padding: 20px 18px; border-radius: 18px; }
  .amg-single-product__details .amg-single-product__section-title { font-size: 20px; }
  .amg-single-product__description.entry-content { font-size: 14px; }
  .amg-single-product__description.entry-content > h2,
  .amg-single-product__description.entry-content > h3,
  .amg-single-product__description.entry-content > h4,
  .amg-product-facts > h3 { font-size: 18px; }
  .amg-product-facts .woocommerce-product-attributes tbody { grid-template-columns: minmax(0, 1fr); }
  .amg-product-facts .woocommerce-product-attributes tr { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 14px; padding: 9px 0; }
  .amg-product-facts .woocommerce-product-attributes tr.amg-product-facts__wide { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
  .amg-offer-specs { margin-top: 22px; padding-top: 18px; }
  .amg-offer-specs h3 { font-size: 18px; }
  .amg-offer-specs table,
  .amg-offer-specs tbody { display: block; }
  .amg-offer-specs thead { display: none; }
  .amg-offer-specs tbody tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amg-offer-specs tbody tr + tr { border-top: 1px solid #dfe5d9; }
  .amg-offer-specs tbody tr > * { display: block; min-width: 0; border: 0; padding: 10px 14px; }
  .amg-offer-specs tbody th { grid-column: 1 / -1; width: auto; padding-top: 16px; padding-bottom: 6px; }
  .amg-offer-specs td[data-label]::before { content: attr(data-label); display: block; margin-bottom: 3px; color: #66705e; font-size: 12px; }
  .amg-offer-specs__sources,
  .amg-offer-specs__manual { grid-column: 1 / -1; }
  .amg-offer-specs__sources { padding-bottom: 14px !important; }
}
