/* Scoped editorial market-data product. Shared masthead, ticker and footer are unchanged. */
.market-page { --md-rust:#a84224; --md-green:#2f6b42; --md-muted:#5e5a54; color:var(--ink); background:var(--cream); font:15px/1.6 'DM Sans',sans-serif; }
.market-page *, .market-page *::before, .market-page *::after { box-sizing:border-box; }
.market-page [hidden] { display:none !important; }
.market-page h1,.market-page h2,.market-page h3 { font-family:'Playfair Display',Georgia,serif; color:var(--ink); }
.market-page h2 { font-size:27px; line-height:1.2; margin:0 0 7px; letter-spacing:-.6px; }
.market-page h3 { font-size:20px; line-height:1.3; }
.market-page p { margin:0 0 12px; }
.market-page a { color:var(--md-rust); }
.market-page :is(button,a,select,summary,[tabindex]):focus-visible { outline:3px solid var(--md-green); outline-offset:4px; }
.market-page button,.market-page select { font:inherit; }
.market-page button { cursor:pointer; }
.market-page select { min-height:39px; max-width:100%; background:var(--cream); color:var(--ink); padding:7px 28px 7px 11px; border:1px solid var(--rule); border-radius:3px; font-size:13px; }
.market-page section[id],.market-page [id="markets"],.market-page [id="about-data"],.market-page [id="seasonality"] { scroll-margin-top:24px; }
.md-container { width:min(1200px,100% - 64px); margin:auto; padding-bottom:58px; }
.md-hero { position:relative; min-height:410px; isolation:isolate; background:var(--paper); overflow:hidden; }
.md-hero-image { position:absolute; inset:0 0 0 40%; z-index:-1; }
.md-hero-image picture,.md-hero-photo { width:100%; height:100%; display:block; }
.md-hero-photo { object-fit:cover; object-position:75% center; }
.md-hero-image::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--paper),rgba(243,240,232,.88) 8%,rgba(243,240,232,.12) 48%,transparent 75%); }
.md-hero-image>span { position:absolute; right:14px; bottom:10px; color:#fff; background:#25291dd9; font-size:10px; padding:3px 7px; z-index:1; }
.md-hero-copy { width:min(1200px,100% - 64px); margin:auto; padding:35px 0 28px; }
.md-eyebrow { font:11px/1.5 'DM Sans',sans-serif; letter-spacing:1.6px; text-transform:uppercase; }
.md-hero h1 { font-size:clamp(36px,4vw,53px); line-height:1.08; letter-spacing:-1.7px; margin:10px 0 18px; max-width:730px; }
.md-deck { font:22px/1.3 'Lora',Georgia,serif; }
.md-intro { font:16px/1.55 'Lora',Georgia,serif; max-width:490px; padding-top:6px; }
.md-updated { display:flex; flex-wrap:wrap; gap:10px 22px; align-items:center; color:var(--md-muted); font-size:11px; margin-top:20px !important; }
.md-status { display:inline-flex; gap:8px; align-items:center; color:var(--md-green); }
.md-status::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--md-green); }
.md-status b { font-size:9px; letter-spacing:1px; text-transform:uppercase; border:1px solid #a5b59f; padding:1px 5px; }
.md-section-nav { display:flex; border-bottom:1px solid var(--rule); overflow-x:auto; gap:12px; padding-top:4px; }
.md-section-nav a { flex:none; padding:17px 22px 14px; color:var(--md-muted); font:14px/1.4 'Lora',serif; border-bottom:2px solid transparent; text-decoration:none; }
.md-section-nav a.is-active { color:var(--md-rust); border-bottom-color:var(--md-rust); }
.md-sample-notice { font-size:11px; letter-spacing:1px; text-transform:uppercase; color:var(--md-rust); padding:13px 0 4px; }
.md-sample-notice span { color:var(--md-muted); letter-spacing:0; text-transform:none; margin-left:12px; font-size:12px; }
#md-error { padding:18px; border:1px solid var(--md-rust); }
.md-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; margin:16px 0; }
.md-segments { display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.md-segments button { border:0; background:transparent; color:var(--md-muted); font-size:13px; padding:9px 14px; border-bottom:2px solid transparent; }
.md-segments button[aria-pressed="true"] { color:var(--md-rust); border-bottom-color:var(--md-rust); background:#a8422406; }
.md-segments button:hover { background:var(--paper); }
.md-note { color:var(--md-muted); font-size:11px; line-height:1.6; }
.md-snapshots { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; margin-bottom:28px; }
.md-snapshot { background:var(--paper); padding:14px 19px 17px; border:1px solid #e9e4da; border-radius:3px; }
.md-produce-icon { display:block; font-size:43px; line-height:1.4; text-align:center; margin:0 0 6px; filter:saturate(.85); }
.md-produce-art { display:inline-block; width:80px; height:72px; background:url('../images/market-data/produce-sprite.webp') var(--produce-position,0%) 50% / 600% auto no-repeat; mix-blend-mode:multiply; vertical-align:middle; }
.md-table-icon .md-produce-art { width:26px; height:28px; }
.md-snapshot h3 { font:14px/1.4 'DM Sans',sans-serif; margin-bottom:2px; }
.md-snapshot-price { font:700 26px/1.4 'Playfair Display',serif; white-space:nowrap; }
.md-snapshot-price small { font:14px 'Lora',serif; }
.md-change { display:inline-block; white-space:nowrap; font-size:14px; }
.md-up { color:var(--md-green); }.md-down { color:var(--md-rust); }
.md-snapshot .md-note { display:block; }
.md-main-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:22px; align-items:stretch; }
.md-panel { border:1px solid var(--rule-light); background:#fffdf83b; padding:22px; margin-bottom:25px; min-width:0; }
.md-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:17px; }
.md-panel-head p { font-size:12px; color:var(--md-muted); margin-bottom:0; }
.md-panel-head .md-eyebrow { margin-bottom:7px; font-size:10px; color:var(--md-rust); }
.md-unit { display:block; font-size:11px; border:1px solid var(--rule); padding:6px 10px; white-space:nowrap; }
.md-table-scroll { overflow:auto; max-width:100%; }
.md-table { width:100%; border-collapse:collapse; font-size:12px; white-space:nowrap; font-variant-numeric:tabular-nums; }
.md-table th { padding:9px 8px; font-weight:400; color:var(--md-muted); background:var(--paper); font-size:11px; text-align:right; }
.md-table td { padding:11px 8px; border-bottom:1px solid var(--rule-light); text-align:right; }
.md-table :is(th,td):first-child { text-align:left; }
.md-table td .md-change { font-size:12px; }
.md-table caption { text-align:left; font-size:12px; padding-bottom:10px; }
.md-table-icon { font-size:21px; margin-right:9px; vertical-align:middle; }
.md-text-link { display:inline-flex; gap:12px; align-items:center; margin-top:17px; font-size:13px; text-decoration:none; }
.md-chart { min-height:240px; position:relative; }
.md-chart svg { display:block; width:100%; height:auto; overflow:visible; }
.md-chart text { font:11px 'DM Sans',sans-serif; fill:var(--md-muted); }
.md-chart .md-point { cursor:crosshair; stroke-width:2px; }
.md-chart .md-point:focus { outline:none; stroke:var(--ink); stroke-width:3px; }
.md-chart-legend { display:flex; justify-content:center; flex-wrap:wrap; gap:20px; font-size:11px; margin:5px 0 8px; }
.md-chart-legend span::before { content:''; display:inline-block; height:2px; width:20px; margin-right:7px; vertical-align:middle; background:var(--series); }
.md-chart-tooltip { min-height:32px; font-size:11px; color:var(--md-muted); text-align:center; padding:4px; }
.md-insight { display:flex; gap:14px; padding:14px 17px; background:var(--paper); border-radius:3px; margin-top:4px; }
.md-insight>span { color:var(--md-green); font-size:30px; }
.md-insight h3 { font-size:16px; margin:0 0 5px; }.md-insight p { font-size:12px; line-height:1.6; margin-bottom:3px; }.md-insight small { font-size:10px; color:var(--md-muted); }
.md-activity-values { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.md-activity-values>div { border-left:1px solid var(--rule); padding-left:20px; }
.md-activity-values>div:first-child { border-left:0; padding-left:0; }
.md-activity-values span { display:block; color:var(--md-muted); font-size:12px; }
.md-activity-values strong { font:26px/1.5 'Playfair Display',serif; }
.md-history-controls { display:flex; gap:24px; align-items:end; flex-wrap:wrap; margin:18px 0; }
.md-history-controls label,.md-download-controls label { display:grid; gap:5px; font-size:11px; color:var(--md-muted); }
.md-periods { border:0; margin:0 0 0 auto; padding:0; }.md-periods legend { font-size:11px; color:var(--md-muted); }.md-periods button { padding:7px 12px; }
.md-chart-large { max-width:100%; }.md-chart-large svg { max-height:330px; }
.md-history-stats { display:flex; flex-wrap:wrap; gap:25px; padding:10px 0; border-top:1px solid var(--rule-light); font-size:12px; color:var(--md-muted); }.md-history-stats strong { color:var(--ink); margin-left:7px; font-size:16px; }
.md-history-detail { font-size:12px; margin-top:8px; }.md-history-detail summary { cursor:pointer; color:var(--md-rust); padding:8px 0; }.md-history-detail .md-table-scroll { max-height:330px; }
.md-locations-grid { display:grid; grid-template-columns:minmax(0,2.2fr) minmax(0,1fr); gap:22px; margin-bottom:25px; }.md-locations-grid .md-panel { margin:0; }
.md-location-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:20px; }
.md-location-card { border:1px solid var(--rule); border-radius:3px; overflow:hidden; }
.md-location-art { padding:24px 20px; background:#e7e7db; color:#4f6043; display:flex; justify-content:space-between; align-items:center; }.md-location-art svg { width:90px; height:58px; }.md-location-art span { font:11px 'DM Mono',monospace; letter-spacing:1px; }
.md-location-card:nth-child(2) .md-location-art { background:#ede2d3; color:#836144; }
.md-location-body { padding:17px; }.md-location-body h3 { margin-bottom:10px; }.md-location-body p { font-size:12px; color:var(--md-muted); }.md-location-body address { font-size:12px; font-style:normal; margin:10px 0; }
.md-location-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:8px; }.md-location-links a { font-size:11px; }
.md-location-body button { border:0; background:none; color:var(--md-rust); font-size:13px; padding:8px 0; }
.md-editorial { background:var(--paper); padding:25px; }.md-editorial h2 { font-size:23px; }.md-editorial p { font-size:14px; color:var(--md-muted); }.md-editorial .md-eyebrow { font-size:10px; }.md-short-rule { width:32px; height:2px; background:var(--md-rust); margin:18px 0; }
.md-editorial blockquote { font:italic 23px/1.5 'Lora',serif; border-top:1px solid var(--rule); padding-top:24px; margin-top:24px; }
.md-button,.md-outline-button { display:inline-flex; align-items:center; gap:12px; background:var(--md-rust); border:1px solid var(--md-rust); color:white !important; padding:10px 15px; border-radius:3px; font-size:13px !important; text-decoration:none; }
.md-outline-button { background:transparent; color:var(--md-rust) !important; }.market-page button:disabled { cursor:wait; opacity:.6; }
.md-download { display:flex; justify-content:space-between; align-items:center; gap:22px; }.md-download p { font-size:13px; color:var(--md-muted); }.md-download-controls { display:flex; align-items:end; gap:10px; flex-wrap:wrap; }
.md-bottom-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:22px; }.md-bottom-grid .md-panel { margin:0; }.md-bottom-grid p { font-size:13px; color:var(--md-muted); }.md-method { font-size:12px; margin:20px 0; }.md-method dt { font-weight:600; margin-top:13px; }.md-method dd { color:var(--md-muted); margin:4px 0 0; }
.md-api { padding:25px; border-top:3px solid var(--md-rust); background:var(--paper); min-width:0; }.md-api pre { overflow:auto; font:11px/2.2 'DM Mono',monospace; margin:18px 0; padding:15px; border:1px solid var(--rule); }.md-api-badge { font-size:10px; border:1px solid var(--rule); padding:5px 8px; }.md-api .md-note { margin-top:12px; }
@media (max-width:1050px) { .md-snapshots { grid-template-columns:repeat(3,minmax(0,1fr)); }.md-hero h1 { font-size:43px; max-width:620px; }.md-main-grid { grid-template-columns:1fr 1fr; }.md-panel { padding:17px; }.md-panel-head { flex-wrap:wrap; }.md-locations-grid { grid-template-columns:2fr 1fr; }.md-download { align-items:flex-start; flex-direction:column; } }
@media (max-width:760px) { .md-container,.md-hero-copy { width:calc(100% - 36px); }.md-main-grid,.md-bottom-grid,.md-locations-grid { grid-template-columns:1fr; }.md-hero { display:flex; flex-direction:column; }.md-hero-copy { padding:28px 0 16px; }.md-hero h1 { font-size:36px; letter-spacing:-1px; }.md-hero-image { position:relative; inset:auto; order:2; z-index:0; height:220px; }.md-hero-image::after { background:linear-gradient(180deg,var(--paper),transparent 30%); }.md-hero-image>span { font-size:9px; }.md-intro { max-width:none; }.md-snapshots { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.md-snapshot { padding:12px 16px; }.md-toolbar { flex-direction:column; align-items:flex-start; gap:7px; }.md-section-nav { gap:0; }.md-section-nav a { padding-inline:16px; }.md-sample-notice span { display:block; margin:5px 0; }.md-activity-values { grid-template-columns:1fr 1fr; gap:18px; }.md-activity-values>div:nth-child(3) { border-left:0; padding-left:0; }.md-history-controls { gap:15px; }.md-periods { margin:0; width:100%; }.md-periods button { padding:7px 10px; }.md-download-controls { width:100%; }.md-download-controls label { width:100%; }.md-location-cards { gap:12px; }.md-panel { padding:16px; }.md-chart-large svg { min-height:230px; }.md-history-stats { gap:12px; } }
@media (max-width:430px) { .md-location-cards { grid-template-columns:1fr; }.md-segments button { padding:8px 10px; font-size:12px; }.md-hero h1 { font-size:32px; }.md-snapshot-price { font-size:25px; } }
@media (prefers-reduced-motion:reduce) { .market-page { scroll-behavior:auto; } }
