/* Mill Management only; shared navigation, type and theme remain in charge. */
.mill-hero { display: grid; align-items: center; min-height: clamp(300px, 38vw, 560px); padding-block: 80px; background: linear-gradient(110deg, rgba(7,27,17,.82), rgba(7,27,17,.58)), url('../images/operations/mill/slide-apom.jpeg') center / cover; }
.mill-section { padding-block: clamp(56px, 7vw, 104px); }
.mill-tinted { background: var(--off-white); border-block: 1px solid var(--line); }
.mill-products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: clamp(24px, 4vw, 64px); }
.mill-copy { min-width: 0; }
.mill-page main h2 { color: var(--ink); font-size: clamp(2rem, 3.5vw, 3rem); line-height: 1.2; }
.mill-page main h3 { color: var(--ink); line-height: 1.35; }
.mill-copy h2::before, .mill-section-heading h2::before { content: ''; display: block; width: 44px; height: 2px; background: var(--gold); margin-bottom: 1.5rem; }
.mill-copy p { margin-top: 1.5rem; line-height: 1.85; }
.mill-copy h3 { margin: 1.75rem 0 .75rem; font-size: 1.5rem; }
.mill-product-list { display: grid; gap: .4rem; }
.mill-product-image { width: 100%; height: auto; }
.mill-section-heading { max-width: 800px; margin: 0 auto 3rem; text-align: center; }
.mill-section-heading h2::before { margin-inline: auto; }
.mill-section-heading p { margin-top: 1.5rem; line-height: 1.85; }
.mill-timeline { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 5rem; row-gap: 1.5rem; list-style: none; }
.mill-timeline::before { content: ''; position: absolute; top: 0; bottom: 0; left: calc(50% - 1px); width: 2px; background: var(--gold); }
.mill-milestone { position: relative; min-width: 0; padding: clamp(24px, 3vw, 36px); background: var(--paper); border: 1px solid var(--line); border-top: 2px solid var(--gold); border-radius: 4px; box-shadow: var(--shadow-soft); }
.mill-milestone:nth-child(odd) { grid-column: 1; }
.mill-milestone:nth-child(even) { grid-column: 2; }
.mill-milestone:nth-child(1) { grid-row: 1; }
.mill-milestone:nth-child(2) { grid-row: 2; }
.mill-milestone:nth-child(3) { grid-row: 3; }
.mill-milestone:nth-child(4) { grid-row: 4; }
.mill-milestone:nth-child(5) { grid-row: 5; }
.mill-milestone:nth-child(6) { grid-row: 6; }
.mill-milestone:nth-child(7) { grid-row: 7; }
.mill-milestone::before { content: ''; position: absolute; top: 36px; right: -2.5rem; width: 2.5rem; height: 1px; background: var(--gold); }
.mill-milestone::after { content: ''; position: absolute; top: 30px; right: calc(-2.5rem - 6px); width: 12px; height: 12px; border-radius: 50%; border: 2px solid var(--gold); background: var(--paper); }
.mill-milestone:nth-child(even)::before { right: auto; left: -2.5rem; }
.mill-milestone:nth-child(even)::after { right: auto; left: calc(-2.5rem - 6px); }
.mill-logo { display: inline-flex; padding: 12px; margin-bottom: 1.5rem; background: #fff; }
.mill-logo img { width: 160px; height: 100px; object-fit: contain; }
.mill-milestone h3 { font-size: clamp(1.3rem, 2vw, 1.65rem); }
.mill-charts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.mill-chart-panel { min-width: 0; padding: clamp(16px, 2vw, 28px); border: 1px solid var(--line); border-top: 2px solid var(--gold); background: var(--paper); border-radius: 4px; }
.mill-chart-panel h3 { margin-bottom: 1.5rem; font-size: 1.5rem; }
.mill-chart-canvas { position: relative; height: 320px; margin-bottom: 1.5rem; }
.mill-data-table { width: 100%; border-collapse: collapse; font-size: .9rem; font-variant-numeric: tabular-nums; }
.mill-data-table caption { text-align: left; color: var(--ink-soft); padding-bottom: .75rem; }
.mill-data-table th, .mill-data-table td { padding: .5rem; text-align: left; border-bottom: 1px solid var(--line); }
.mill-data-table td, .mill-data-table thead th:last-child { text-align: right; }
.mill-data-note { margin-top: 1rem; font-size: .9rem; }
.mill-page main { overflow-wrap: anywhere; }
.mill-page .reveal { opacity: 1; transform: none; transition: none; }
.mill-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (prefers-reduced-motion: no-preference) {
  .mill-page .reveal.in { animation: mill-enter .6s ease both; }
}
@keyframes mill-enter { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@media (max-width: 800px) {
  .mill-products, .mill-charts { grid-template-columns: minmax(0, 1fr); }
  .mill-timeline { grid-template-columns: minmax(0, 1fr); padding-left: 24px; gap: 1.25rem; }
  .mill-timeline::before { left: 0; }
  .mill-timeline .mill-milestone { grid-column: 1; grid-row: auto; }
  .mill-timeline .mill-milestone::before { right: auto; left: -24px; width: 24px; }
  .mill-timeline .mill-milestone::after { right: auto; left: -30px; }
}
