/* Native progressive enhancement, preserving the established brand and product layouts. */
.motion-ready{opacity:0;transform:translateY(28px);transition:opacity .7s ease var(--motion-delay,0ms),transform .7s cubic-bezier(.2,.7,.2,1) var(--motion-delay,0ms)}
.motion-ready.motion-seen{opacity:1;transform:none}
.company-metrics strong{font-variant-numeric:tabular-nums}
.market-map{margin:32px 0 40px;background:var(--cream);border-radius:var(--radius-md);overflow:hidden}
.market-map svg{display:block;width:100%;height:auto;fill:var(--green)}
.market-map .market-land{fill:#dde8d7;stroke:var(--cream);stroke-width:.5}
.market-map text{font:600 14px var(--body-font)}
.market-map .market-arc{fill:none;stroke:var(--orange);stroke-width:2.5;stroke-linecap:round}
.market-map.map-waiting .market-arc{stroke-dasharray:1;stroke-dashoffset:1}
.market-map.map-drawn .market-arc{stroke-dasharray:1;animation:market-connect 1.8s cubic-bezier(.2,.6,.3,1) calc(var(--order)*.22s) both}
.market-map figcaption{padding:0 24px 22px;font-size:13px;color:var(--muted)}
@keyframes market-connect{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.supply-story{margin-top:56px;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}
.story-photo{margin:0 0 24px}.story-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-md)}
.story-photo figcaption{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.6}
.story-stage{padding:32px 0 44px;border-top:1px solid var(--line)}
.story-number{font-size:14px;color:var(--green);font-variant-numeric:tabular-nums}
.taste-refined .story-stage h3{font-size:clamp(26px,3vw,42px);line-height:1.15;margin:18px 0}
.story-stage p{max-width:36ch}.story-stage>a{display:inline-flex;gap:18px;font-weight:600;color:var(--green);margin-top:18px}
.story-stage>a span{transition:transform .25s}.story-stage>a:hover span{transform:translateX(6px)}
@media(min-width:901px){
 .story-enhanced .story-visual{position:sticky;top:112px;display:grid}
 .story-enhanced .story-photo{grid-area:1/1;opacity:0;visibility:hidden;transform:scale(.975);transition:opacity .6s,transform .8s,visibility .6s}
 .story-enhanced .story-photo.is-current{opacity:1;visibility:visible;transform:none}
 .story-enhanced .story-photo img{max-height:62svh}
 .story-enhanced .story-stage{min-height:62svh;display:flex;flex-direction:column;justify-content:center;opacity:.5;transition:opacity .5s}
 .story-enhanced .story-stage.is-current{opacity:1}
}
@media(max-width:900px){.supply-story{display:block}.story-js .story-visual{display:none}.story-stage{padding:24px 0 40px}.story-stage .story-photo{margin-bottom:24px}.story-stage .story-photo img{aspect-ratio:4/3;max-height:420px}}
@media(hover:hover){.taste-refined .card img{transition:transform .65s cubic-bezier(.2,.7,.2,1)}.taste-refined .card:hover img{transform:scale(1.035)}.taste-refined .btn{transition:background .2s,transform .2s,box-shadow .2s}.taste-refined .btn:hover{transform:translateY(-2px)}.taste-refined .btn:active{transform:translateY(0) scale(.98)}}
#nav a{position:relative}#nav a:after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s}#nav a:is(:hover,:focus-visible):after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.motion-ready{opacity:1;transform:none;transition:none}.market-map .market-arc{animation:none!important;stroke-dashoffset:0!important}.story-enhanced .story-photo,.story-enhanced .story-stage{transition:none}.taste-refined .card img,#nav a:after{transition:none}.taste-refined .card:hover img{transform:none}}
@media print{.motion-ready{opacity:1;transform:none}.story-enhanced .story-visual{position:static;display:block}.story-enhanced .story-photo{opacity:1;visibility:visible}.story-enhanced .story-stage{min-height:0;opacity:1}}
/* Keep animation control on the map; remove the obsolete relationship legend row. */
.market-map{position:relative}.market-map-controls{position:absolute;right:16px;top:12px;z-index:2}.market-map-controls button{background:#fff!important;font-size:12px;padding:7px 12px;min-height:36px}
