/* Local, self-contained About + supply concept. No stock logic, external map or animation. */
.avm-about {
    background: #fff;
    color: #080a1d;
    scroll-margin-top: 96px;
    font: 400 16px/1.6 Helvetica, Arial, sans-serif;
}
.avm-about *, .avm-about *::before, .avm-about *::after { box-sizing: border-box; }
.avm-about__inner { max-width: 1440px; padding: 76px clamp(24px, 5.5vw, 88px) 64px; margin: 0 auto; }
.avm-about h2, .avm-about h3, .avm-about h4, .avm-about p, .avm-about dl, .avm-about dt, .avm-about dd, .avm-about ol, .avm-about li { padding: 0; margin: 0; }
.avm-about ol { list-style: none; }
.avm-about__overview { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: clamp(32px, 5vw, 72px); }
.avm-about__company, .avm-about__supply { min-width: 0; }
.avm-about .avm-about__eyebrow { display: flex; align-items: center; gap: 10px; color: #5b657a; font-size: 10px; line-height: 1.5; font-weight: 700; letter-spacing: .12em; }
.avm-about__eyebrow > span { flex: 0 0 7px; height: 7px; background: #f5a123; }
.avm-about h2 { margin-top: 20px; font: 400 clamp(28px, 2.7vw, 36px)/1.2 'Akzidenz-Grotesk Pro Bold Ext', Helvetica, Arial, sans-serif; letter-spacing: -.025em; text-transform: none; color: #080a1d; }
.avm-about .avm-about__intro { margin-top: 24px; max-width: 48ch; color: #505a6e; font-size: 16px; line-height: 1.7; }
.avm-about .avm-about__link { display: inline-flex; align-items: center; gap: 22px; min-height: 44px; padding: 8px 0; margin-top: 15px; color: #012fea; font: 700 14px/1.4 Helvetica, Arial, sans-serif; text-decoration: none; }
.avm-about__link > span { font: 400 20px/1 Helvetica, Arial, sans-serif; }
.avm-about .avm-about__link:hover { text-decoration: underline; text-underline-offset: 5px; }
.avm-about .avm-about__link:focus-visible { outline: 2px solid #012fea; outline-offset: 4px; }
.avm-about__route { margin-top: 34px; padding-top: 24px; border-top: 1px solid #dee3ed; }
.avm-about__route h3 { font: 700 14px/1.4 Helvetica, Arial, sans-serif; text-transform: none; color: #080a1d; }
.avm-about .avm-about__route-line { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr) minmax(0, 1fr); align-items: center; gap: 26px; margin-top: 18px; }
.avm-about__route-line li { position: relative; font-size: 13px; line-height: 1.45; color: #505a6e; }
.avm-about__route-line li + li::before { content: '→'; position: absolute; left: -22px; top: 50%; transform: translateY(-50%); color: #012fea; font: 400 18px/1 Helvetica, Arial, sans-serif; }
.avm-about__route-line .avm-about__route-hub { background: #eef2ff; padding: 14px 8px; text-align: center; color: #012fea; }
.avm-about__route-hub strong { display: block; font-size: 22px; font-weight: 700; line-height: 1.2; }
.avm-about__route-hub span { display: block; margin-top: 5px; color: #4c5b7c; font-size: 10px; line-height: 1.5; }
.avm-about__route .avm-about__route-end { text-align: right; }
.avm-about__route > p { margin-top: 12px; font-size: 12px; line-height: 1.55; color: #687287; }
.avm-about__supply { padding: 26px 28px 24px; background: #f3f5f9; border-top: 2px solid #012fea; }
.avm-about__supply-head { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px 20px; align-items: center; padding-bottom: 7px; }
.avm-about__supply h3 { font: 700 17px/1.4 Helvetica, Arial, sans-serif; text-transform: none; color: #080a1d; }
.avm-about__supply-head > span { font-size: 9px; font-weight: 700; letter-spacing: .1em; color: #616c80; }
.avm-about .avm-about__stock-row { display: grid; grid-template-columns: minmax(0, 1fr) 142px; gap: 20px; padding: 21px 0; border-bottom: 1px solid #dce2ec; }
.avm-about__stock-name { display: flex; align-items: center; gap: 12px; font-size: 16px; font-weight: 700; color: #080a1d; }
.avm-about__stock-name i { font: 400 10px/1 Helvetica, Arial, sans-serif; color: #687287; }
.avm-about__stock-description { display: block; margin-top: 6px; font-size: 13px; line-height: 1.5; color: #596479; }
.avm-about__stock-row dd { text-align: right; align-self: center; }
.avm-about__stock-row dd strong { display: block; color: #012fea; font-size: 30px; line-height: 1.15; letter-spacing: -.04em; font-weight: 400; font-variant-numeric: tabular-nums; }
.avm-about__stock-row dd span { display: block; margin-top: 5px; color: #596479; font-size: 12px; line-height: 1.5; }
.avm-about .avm-about__supply-note { padding-top: 17px; color: #616c80; font-size: 12px; line-height: 1.65; }
.avm-about__process { margin-top: 54px; padding-top: 26px; border-top: 1px solid #dce2ec; }
.avm-about__process-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 24px; }
.avm-about__process-head h3 { font: 700 20px/1.4 Helvetica, Arial, sans-serif; color: #080a1d; text-transform: none; }
.avm-about__process-head .avm-about__link { margin: 0; }
.avm-about .avm-about__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; margin-top: 24px; }
.avm-about__steps li { position: relative; min-width: 0; }
.avm-about__step-number { position: relative; display: block; color: #012fea; font: 400 30px/1 'Akzidenz-Grotesk Pro Bold Ext', Helvetica, Arial, sans-serif; letter-spacing: -.035em; padding-bottom: 20px; }
.avm-about__step-number::after { content: ''; position: absolute; height: 1px; background: #dce2ec; top: 16px; left: 86px; right: 0; }
.avm-about__steps h4 { font: 700 15px/1.45 Helvetica, Arial, sans-serif; text-transform: none; color: #080a1d; }
.avm-about__steps p { margin-top: 7px; max-width: 29ch; font-size: 13px; line-height: 1.6; color: #616c80; }
@media (max-width: 1100px) {
    .avm-about { scroll-margin-top: 80px; }
    .avm-about__inner { padding: 52px 32px; }
    .avm-about__overview { gap: 28px; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
    .avm-about h2 { font-size: 28px; }
    .avm-about__supply { padding-inline: 22px; }
    .avm-about .avm-about__stock-row { grid-template-columns: minmax(0, 1fr) 115px; gap: 12px; }
    .avm-about__stock-name { font-size: 15px; gap: 8px; }
    .avm-about__stock-name i { display: none; }
    .avm-about__stock-row dd strong { font-size: 27px; }
    .avm-about__route-line .avm-about__route-hub { padding-inline: 5px; }
    .avm-about__steps { column-gap: 22px; }
}
@media (max-width: 900px) {
    .avm-about__overview { grid-template-columns: minmax(0, 1fr); gap: 32px; }
    .avm-about__company { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 36px; }
    .avm-about__company > :not(.avm-about__route) { grid-column: 1; }
    .avm-about__route { grid-column: 2; grid-row: 2 / 5; align-self: center; margin: 0; border: 0; padding: 0; }
    .avm-about .avm-about__intro { margin-top: 18px; }
    .avm-about__supply { padding: 22px 24px; }
    .avm-about .avm-about__stock-row { grid-template-columns: minmax(0, 1fr) 150px; padding: 17px 0; }
    .avm-about__stock-name i { display: inline; }
    .avm-about__supply-head { padding-bottom: 4px; }
    .avm-about__process { margin-top: 36px; }
    .avm-about .avm-about__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px 36px; }
}
@media (max-width: 600px) {
    .avm-about { scroll-margin-top: 71px; }
    .avm-about__inner { padding: 36px 20px; }
    .avm-about__company { display: block; }
    .avm-about .avm-about__eyebrow { font-size: 9px; letter-spacing: .09em; }
    .avm-about h2 { margin-top: 16px; font-size: 27px; }
    .avm-about .avm-about__intro { line-height: 1.65; }
    .avm-about__route { margin-top: 22px; border-top: 1px solid #dce2ec; padding-top: 22px; }
    .avm-about__overview { gap: 24px; }
    .avm-about__supply { padding: 18px 16px; }
    .avm-about .avm-about__stock-row { grid-template-columns: minmax(0, 1fr) 104px; gap: 12px; padding: 15px 0; }
    .avm-about__stock-name { font-size: 14px; }
    .avm-about__stock-name i { display: none; }
    .avm-about__stock-description { font-size: 13px; }
    .avm-about__stock-row dd strong { font-size: 28px; }
    .avm-about__stock-row dd span { font-size: 12px; }
    .avm-about__supply-head > span { font-size: 8px; }
    .avm-about .avm-about__supply-note { font-size: 12px; }
    .avm-about__process-head { align-items: start; flex-direction: column; gap: 4px; }
    .avm-about__process-head h3 { font-size: 19px; }
    .avm-about__process { margin-top: 28px; padding-top: 20px; }
    .avm-about .avm-about__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 18px; margin-top: 16px; }
    .avm-about__steps li { display: block; padding: 0; }
    .avm-about__step-number { font-size: 22px; padding: 0 0 10px; }
    .avm-about__step-number::after { top: 11px; left: 60px; right: 0; }
    .avm-about__steps h4 { font-size: 14px; }
    .avm-about__steps p { max-width: none; margin-top: 4px; line-height: 1.45; }
}
@media (max-width: 359px) {
    .avm-about__inner { padding-inline: 20px; }
    .avm-about h2 { font-size: 24px; }
    .avm-about__supply { padding-inline: 16px; }
    .avm-about .avm-about__stock-row { grid-template-columns: minmax(0, 1fr) 91px; gap: 10px; }
    .avm-about .avm-about__route-line { gap: 23px; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.55fr) minmax(0, .85fr); }
    .avm-about__route-line li + li::before { left: -20px; }
}
