
:root{--paper:#f8efdf;--paper2:#fff9ef;--ink:#231a28;--quiet:#73695c;--purple:#482b57;--purple2:#805785;--yellow:#e5b841;--yellow2:#ffde75;--mint:#80a99b;--sage:#446e66;--line:#e4d8c6;--sans:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}a{color:var(--purple)}.screenreader{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
#top-progress{position:fixed;height:4px;width:0;background:linear-gradient(90deg,#ddb044,#73507b);top:0;left:0;z-index:300;pointer-events:none}
.topnav{position:absolute;z-index:60;left:0;right:0;top:0;padding:24px clamp(22px,5vw,88px);display:flex;justify-content:space-between;align-items:center;color:var(--purple)}.brand{font:bold 18px var(--serif);letter-spacing:.035em}.topnav .eyebrow{font-size:10px;letter-spacing:.19em;font-weight:800;text-transform:uppercase}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:100px 20px 85px;overflow:hidden;background:radial-gradient(ellipse at 47% 9%,#fff6e7 0%,var(--paper) 76%)}.hero::after{content:'';position:absolute;bottom:0;width:100%;height:90px;background:linear-gradient(transparent,#f8efdf);pointer-events:none}.hero-art{position:relative;width:min(960px,90vw);height:clamp(215px,33vh,330px);margin-top:-24px;display:flex;align-items:center;justify-content:center}.hero-art svg{width:100%;height:100%;overflow:visible}.hero h1{font-size:clamp(40px,6.1vw,102px);font-weight:900;letter-spacing:-.065em;line-height:1.03;max-width:1100px;margin:4px auto 12px;text-align:center;color:var(--purple);text-wrap:balance}.hero h1 span{color:#a86d4d}.hero .kicker{font-size:12px;text-transform:uppercase;letter-spacing:.24em;color:#7f6545;font-weight:800;margin:12px 0 8px}.hero .sapo{font-family:var(--serif);max-width:795px;text-align:center;font-size:clamp(16px,1.64vw,21px);line-height:1.75;color:#574d49;margin:20px auto 40px}.scroll-cue{display:flex;align-items:center;gap:9px;font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:#856f55;animation:bob 2.4s infinite}.scroll-cue i{display:block;width:1px;height:26px;background:#b99a67;position:relative}.scroll-cue i:after{content:'';position:absolute;bottom:0;left:-3px;width:7px;height:7px;transform:rotate(45deg);border-right:1px solid #ad925e;border-bottom:1px solid #ad925e}@keyframes bob{50%{transform:translateY(7px)}}

.opening{display:grid;grid-template-columns:minmax(0,50%) minmax(0,50%);position:relative;background:#faf1e3}.stage{height:100svh;position:sticky;top:0;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#eee4d0;overflow:hidden;border-right:1px solid #e6dac8}.stage:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 45% 37%,#fff7e6a0,transparent 65%);pointer-events:none}.stage-eyebrow{position:absolute;top:7.5%;left:7%;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#827461;font-weight:900}.stage-scene{position:absolute;inset:14% 5% 17%;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(22px) scale(.97);transition:opacity .7s,transform .8s;pointer-events:none}.stage-scene.active{opacity:1;transform:translateY(0) scale(1)}.stage-caption{position:absolute;bottom:7%;width:82%;font-size:clamp(12px,1.1vw,15px);font-weight:800;color:var(--purple);text-align:center;line-height:1.5;transition:opacity .3s}.stage-bottle svg{width:min(78%,400px);height:100%;max-height:560px;overflow:visible}.glass{fill:#fff9e7c7;stroke:#433249;stroke-width:2.7}.glass-highlight{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;opacity:.7}.oil-fill{fill:#efc850;transform:translateY(100%);transition:transform .12s linear}.oil-fill-wave{fill:#fff0a3;opacity:.8}.bottle-cap{fill:#9e78a2;stroke:#47324c;stroke-width:3}.extra-cap{transform:translate(-20px,18px);opacity:0;transition:opacity .45s,transform .6s}.extra-cap.visible{opacity:1;transform:translate(0,0)}.stage-big-numeral{font-size:clamp(32px,5.4vw,78px);font-weight:900;letter-spacing:-.05em;color:var(--purple)}.stage-small{font-size:13px;color:#635949;font-weight:700;line-height:1.45}.stage-row{display:flex;justify-content:center;align-items:center;gap:20px;max-width:95%}.import-layout{width:94%;max-width:500px}.import-card{background:#fffaf0;border:1.5px solid #7d6878;border-radius:12px;margin:10px 0;padding:15px 19px;box-shadow:6px 6px 0 #e6d4b7;opacity:.4;transform:translateX(-12px);transition:all .5s}.import-card.show{opacity:1;transform:none}.import-card .num{font-weight:900;font-size:clamp(25px,3vw,40px);color:var(--purple)}.import-card strong{display:block;font-size:13px;line-height:1.4}.import-card small{font-size:11px;color:#756a56}.factory-vis{width:98%;max-width:540px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px}.factory-vis svg{width:100%;max-width:450px;height:auto}.factory-name{font-weight:900;letter-spacing:.06em;font-size:clamp(22px,4vw,52px);color:var(--purple);opacity:0;transform:translateY(14px);transition:.6s}.factory-name.show{opacity:1;transform:none}.factory-share{opacity:0;transform:translateY(14px);transition:.6s}.factory-share.show{opacity:1;transform:none}.factory-share strong{font-size:clamp(35px,6vw,76px);color:#5f3d61;letter-spacing:-.06em}.factory-share span{display:block;text-align:center;font-size:13px;max-width:320px;line-height:1.5;font-weight:700}.wilmar-scene{flex-direction:column;gap:15px;text-align:center}.wilmar-scene svg{width:min(90%,440px);height:auto}.wilmar-name{font-size:clamp(39px,6vw,75px);font-weight:900;letter-spacing:-.07em;color:var(--purple);line-height:1}.wilmar-kpi{font-size:18px;font-weight:900;color:#6a4b5b;opacity:0;transform:translateY(12px);transition:.5s}.wilmar-kpi.show{opacity:1;transform:none}.wilmar-kpi b{display:block;font-size:35px;color:#3f2b50}.story-steps{padding:5vh 0 14vh}.step{min-height:90vh;padding:16vh clamp(24px,7vw,110px) 17vh;display:flex;flex-direction:column;justify-content:center;max-width:900px;opacity:.36;transition:opacity .55s}.step.active{opacity:1}.step .step-kicker{font-size:11px;letter-spacing:.19em;font-weight:900;text-transform:uppercase;color:#b08b49;margin-bottom:18px}.step h2{font-size:clamp(34px,4.3vw,61px);line-height:1.08;letter-spacing:-.052em;color:var(--purple);max-width:550px;margin:0 0 30px}.step p{font-family:var(--serif);font-size:clamp(18px,1.68vw,25px);line-height:1.7;max-width:590px;margin:12px 0;color:#332b30}.step .data-accent{font:bold clamp(25px,3vw,42px) var(--sans);color:var(--purple);margin-top:14px}.step .small-caption{font-family:var(--sans);font-size:14px;font-weight:700;color:#756651}.step ul{font-family:var(--serif);line-height:1.7}

.chapter{background:var(--paper2);position:relative;padding:0 20px 65px}.chapter:nth-of-type(even){background:#fffaf1}.chapter-lead{width:min(860px,100%);margin:auto;padding:130px 0 35px}.chapter-no{color:#a57d57;font-size:12px;text-transform:none;letter-spacing:.04em;font-weight:800;font-family:var(--sans)}.chapter-lead h2{font-size:clamp(37px,5.2vw,78px);line-height:1.1;letter-spacing:-.055em;color:var(--purple);margin:20px 0 36px;max-width:880px;text-wrap:balance}.body-copy{font:clamp(19px,1.8vw,24px)/1.78 var(--serif);width:min(760px,100%);margin:35px auto;color:#2f2930}.body-copy p{margin:0 0 28px}.body-copy .lede{font-size:1.12em;color:#382d3c}.data-em{font-family:var(--sans);font-weight:900;color:var(--purple)}.graphic{width:min(1100px,100%);margin:65px auto 90px;background:#f6eddf;border:1px solid #e2d4bf;border-radius:21px;padding:clamp(22px,4.3vw,58px);position:relative;overflow:hidden}.graphic h3{font-size:clamp(25px,3.4vw,47px);line-height:1.12;color:var(--purple);letter-spacing:-.04em;margin:0 0 12px}.graphic small,.graphic-caption{font-size:12px;line-height:1.65;color:#716459}.graphic-caption{padding-top:22px;border-top:1px solid #dfd0b9;margin-top:28px}.visual-note{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#a27c53;margin:0 0 16px}.chapter .reveal{opacity:0;transform:translateY(30px);transition:opacity .9s,transform .9s}.chapter .reveal.visible{opacity:1;transform:translateY(0)}
.origin-graphic{display:flex;align-items:center;justify-content:center;gap:45px;flex-wrap:wrap;background:#f2e5d0}.origin-graphic .mini-oil{width:90px;height:225px;flex-shrink:0}.origin-stat{max-width:580px}.origin-stat strong{display:block;font-size:clamp(32px,5.7vw,76px);letter-spacing:-.07em;color:var(--purple)}.origin-stat span{font-size:16px;font-weight:800;color:#6b5c52}.ownership-graphic{background:#f4e9d9}.ownership-header{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:31px}.ownership-header .ownership-number{font-size:clamp(35px,6vw,82px);font-weight:900;line-height:1;color:#42786d;letter-spacing:-.07em}.ownership-header .ownership-number.purple{color:var(--purple)}.ownership-header .ownership-by{font-weight:800;font-size:14px;color:#665454;margin-top:7px}.hundred-bottles{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:9px 5px;max-width:960px;margin:auto}.small-bottle{width:100%;height:42px;fill:#bcaeab;opacity:.24;transition:fill .4s,opacity .4s,transform .5s}.small-bottle.blue{fill:#42796f;opacity:1}.small-bottle.violet{fill:#674170;opacity:1}.small-bottle.drawn{opacity:1}
#ownershipMorphGraphic{background:#f4e9d9}.ownership-morph-head{position:relative;min-height:150px;margin-bottom:12px}.ownership-state{position:absolute;inset:0;transition:opacity .55s ease,transform .65s ease}.ownership-state.stage-two{opacity:0;transform:translateY(18px)}#ownershipMorphGraphic.stage-two .ownership-state.stage-one{opacity:0;transform:translateY(-18px)}#ownershipMorphGraphic.stage-two .ownership-state.stage-two{opacity:1;transform:none}.ownership-state small{display:block;max-width:520px}.ownership-arrow{display:block;margin:14px auto 20px;font-size:15px;color:#756478;font-weight:800;text-align:center;opacity:0;transform:translateY(8px);transition:opacity .45s ease,transform .45s ease}#ownershipMorphGraphic.stage-two .ownership-arrow{opacity:1;transform:none}.ownership-morph-grid{position:relative;max-width:960px;height:500px;margin:18px auto 0}.ownership-morph-grid .small-bottle{position:absolute;width:4.1%;height:42px;transition:left .9s cubic-bezier(.25,.8,.25,1), top .9s cubic-bezier(.25,.8,.25,1), fill .6s ease, opacity .6s ease, transform .9s cubic-bezier(.25,.8,.25,1);left:calc(var(--x0) * 1%);top:calc(var(--y0) * 1%);transform:rotate(var(--r0)) scale(var(--s0,1));fill:var(--c0);opacity:var(--o0,1)}#ownershipMorphGraphic.visible .ownership-morph-grid .small-bottle{opacity:var(--o0,1)}#ownershipMorphGraphic.stage-two .ownership-morph-grid .small-bottle{left:calc(var(--x1) * 1%);top:calc(var(--y1) * 1%);transform:rotate(var(--r1,0deg)) scale(var(--s1,1));fill:var(--c1);opacity:var(--o1,1)}.ownership-legend{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:18px;font-size:12px;font-weight:800;color:#6c615d;transition:opacity .4s ease}.ownership-legend i{width:13px;height:13px;border-radius:3px;display:inline-block;margin-right:5px;vertical-align:middle}.ownership-legend .legend-stage-two{display:none}#ownershipMorphGraphic.stage-two .ownership-legend .legend-stage-one{display:none}#ownershipMorphGraphic.stage-two .ownership-legend .legend-stage-two{display:inline}#ownershipMorphGraphic.stage-two .ownership-legend .legend-stage-two.wrap{display:inline-flex;align-items:center}.ownership-timeline{font-size:12px;color:#6d645a;margin-top:15px}.ownership-morph-caption{transition:opacity .4s ease}.ownership-morph-caption .cap-two{display:none}#ownershipMorphGraphic.stage-two .ownership-morph-caption .cap-one{display:none}#ownershipMorphGraphic.stage-two .ownership-morph-caption .cap-two{display:block}.ownership-trigger{height:1px;margin-top:-1px;opacity:0}@media (max-width:760px){.ownership-morph-grid{height:420px}.ownership-morph-grid .small-bottle{width:7.4%;height:32px}}
.metric-wrap{background:#32263e;color:#fff5e8}.metric-wrap h3{color:#fff}.metric-wrap .visual-note{color:#dfbf8a}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:30px}.metric-tile{padding:28px 20px;min-height:140px;border:1px solid #7c6b7e;border-radius:9px;background:#44344e;opacity:.1;transform:translateY(14px);transition:.8s}.metric-wrap.visible .metric-tile{opacity:1;transform:none}.metric-wrap.visible .metric-tile:nth-child(2){transition-delay:.17s}.metric-wrap.visible .metric-tile:nth-child(3){transition-delay:.3s}.metric-wrap.visible .metric-tile:nth-child(4){transition-delay:.45s}.metric-tile b{display:block;color:#f4cd68;font-size:clamp(30px,4.6vw,63px);letter-spacing:-.07em}.metric-tile span{color:#f2e6e7;font-size:14px;font-weight:700}.metric-wrap .graphic-caption{color:#e2d4da;border-top-color:#685c6e}
.palm-layout{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:45px}.donut{width:min(330px,74vw);height:min(330px,74vw);border-radius:50%;background:conic-gradient(#704b79 0 66%,#d7a94d 66% 91%,#78998a 91% 100%);position:relative;transition:transform .8s}.donut:before{content:'';position:absolute;inset:26%;background:#f6eddf;border-radius:50%}.donut:after{content:'234.000';position:absolute;inset:0;display:grid;place-items:center;color:var(--purple);font-size:clamp(30px,4vw,47px);font-weight:900;letter-spacing:-.05em}.donut-legend{min-width:225px}.donut-legend .item{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d8c9b7;padding:17px 0;font-weight:700;color:#5f5454;gap:17px}.donut-legend .item b{font-size:24px;color:var(--purple)}.legend-dot{display:inline-block;width:13px;height:13px;border-radius:50%;margin-right:7px}
.factory-graphic{background:#ebe1d3}.val-factory{width:100%;max-width:940px;display:block;margin:20px auto;border-radius:13px;background:#f5eee2}.factory-caption{font-size:14px;letter-spacing:.035em;color:#423347;font-weight:900;text-align:center;margin-top:18px}.factory-topline{display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap}.production-visual{display:grid;grid-template-columns:1fr 1.4fr 1.5fr;align-items:center;gap:12px;position:relative;margin-top:25px;min-height:190px}.flow-input{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.flow-input svg{width:85%;max-width:180px;height:75px;overflow:visible}.flow-input b{font-size:22px;color:var(--purple);white-space:nowrap}.flow-input span{font-size:12px;text-align:center;color:#6a5c50}.flow-plant{background:#61426d;color:#fff;text-align:center;padding:18px 8px;border-radius:10px;min-height:95px;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:12px;font-weight:900;position:relative}.flow-plant b{font-size:27px}.flow-plant:before,.flow-plant:after{content:'→';position:absolute;top:38%;right:-17px;font-size:26px;color:#866978;z-index:2}.flow-plant:before{left:-21px;right:auto}.flow-results{display:flex;flex-direction:column;gap:14px;min-width:0}.flow-result{min-width:0}.flow-result span{font-size:12px;color:#55464f;font-weight:800}.flow-result b{font-size:14px;white-space:nowrap}.flow-bar{height:21px;border-radius:3px;transform-origin:left;width:0;transition:width 1.25s cubic-bezier(.17,.72,.21,1)}.flow-result:nth-child(1) .flow-bar{background:#7c9a87}.flow-result:nth-child(2) .flow-bar{background:#e3b452}.production-visual.running .flow-result:nth-child(1) .flow-bar{width:100%;transition-delay:1.05s}.production-visual.running .flow-result:nth-child(2) .flow-bar{width:73%;transition-delay:1.42s}.beans{transform:translateX(0);opacity:0}.production-visual.running .beans{animation:beansFlow 1.5s ease-in-out forwards}@keyframes beansFlow{0%{opacity:0;transform:translateX(-10px)}15%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translateX(130px)}}.play-btn{border:1px solid #695174;background:var(--purple);color:#fffaf2;padding:13px 18px;font-size:12px;font-weight:900;letter-spacing:.045em;border-radius:5px;cursor:pointer;transition:transform .2s,background .2s}.play-btn:hover{background:#704c7b;transform:translateY(-2px)}.flow-callout{font-size:12px;color:#776b63;margin-top:12px}
.chain{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;gap:14px;margin-top:25px}.chain-part{border-radius:10px;padding:20px 7px;text-align:center;background:#fff8ec;min-height:125px;display:flex;flex-direction:column;justify-content:center;gap:12px}.chain-part b{font-size:16px;color:var(--purple)}.chain-part svg{width:70px;height:64px;margin:auto}.chain-ar{display:none}.chain-part:not(:last-child){position:relative}.chain-part:not(:last-child):after{content:'→';position:absolute;font-size:23px;color:#80647b;right:-20px;top:40%;z-index:2}
.chart-box{background:#f7edde}.chart-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.chart-chip{cursor:pointer;border:1px solid #b9a7b3;background:#fff8ed;color:#645260;border-radius:24px;padding:9px 14px;font-weight:800;font-size:12px}.chart-chip[aria-pressed="true"]{background:#4b3157;color:white;border-color:#4b3157}.chart-info{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:5px}.chart-info strong{font-size:clamp(26px,4.2vw,49px);color:var(--purple);letter-spacing:-.04em}.chart-info span{font-size:12px;color:#766457;font-weight:700}.chart-svg-wrap{position:relative;touch-action:pan-y}.chart-svg{width:100%;height:auto;overflow:visible;display:block}.chart-line{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;transition:opacity .3s,stroke-width .3s}.chart-line.dim{opacity:.13;stroke-width:2}.dot-focus{pointer-events:none}.chart-hit{cursor:crosshair;fill:transparent}.chart-tooltip{position:absolute;z-index:2;pointer-events:none;min-width:165px;background:#fffdf6;border:1px solid #b9a58b;box-shadow:0 8px 22px #4d3e3930;border-radius:7px;padding:10px 13px;opacity:0;transform:translate(-50%,-111%);transition:opacity .1s;line-height:1.6;font-size:12px;color:#47394b}.chart-tooltip.visible{opacity:1}.chart-legend{display:flex;gap:17px;flex-wrap:wrap;margin-top:18px;font-size:12px;color:#5c5254;font-weight:800}.chart-legend i{display:inline-block;width:21px;height:4px;margin:0 7px 3px 0;border-radius:5px}.chart-source a{color:#73566d}
.retail-table{width:100%;margin-top:24px}.retail-head{display:grid;grid-template-columns:minmax(145px,1.5fr) minmax(160px,1.5fr) 80px;gap:12px;border-bottom:1px solid #c6bcae;padding:10px 0 15px;font-size:11px;font-weight:900;text-transform:uppercase;color:#80716b;letter-spacing:.06em}.retail-row{display:grid;grid-template-columns:minmax(145px,1.5fr) minmax(160px,1.5fr) 80px;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #e0d4c7;animation:fadeIn .4s both}.retail-row .prod{font-size:13px;font-weight:800;line-height:1.4;color:#3e3440}.barpair{display:flex;flex-direction:column;gap:5px}.bartrack{height:10px;background:#e8dfd4;position:relative;width:100%;border-radius:3px;overflow:hidden}.bartrack span{display:block;height:100%;background:#9d8b9d}.bartrack.new span{background:#d2a544}.retail-delta{text-align:right;font-weight:900;color:#604266;font-size:14px}.retail-delta.flat{color:#8a8278}.retail-row .labelpair{display:flex;gap:10px;align-items:baseline;font-size:11px;color:#665764}.retail-row .labelpair span+span{margin-left:auto;font-weight:800;color:#3a2b3d}.retail-note{font-size:11px;line-height:1.6;color:#79695c;margin-top:19px}.filter-chip{border:1px solid #c4b5b6;padding:9px 16px;border-radius:25px;background:#fff5e9;font-weight:800;color:#644f5c;cursor:pointer;font-size:12px}.filter-chip[aria-pressed=true]{background:#604267;color:#fff}.filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}
.closing{margin:50px auto 0;text-align:center;background:#33283e;color:#f8ecdd;padding:95px 20px 110px}.closing blockquote{font-family:var(--serif);font-size:clamp(22px,3vw,39px);line-height:1.5;max-width:830px;margin:0 auto}.closing .closing-mark{font-size:61px;color:#e7bd63;line-height:1}footer{padding:32px 22px 45px;background:#281f30;color:#e9d9d8;text-align:center;font:12px/1.8 var(--sans)}footer a{color:#f4d18c}.small-note{font-size:12px;color:#867a69;font-weight:700}.part-divider{height:1px;background:#ddcdb9;width:min(800px,100%);margin:65px auto}.sources-inline{font-size:11px;color:#8a7970;margin:14px auto;line-height:1.65;width:min(760px,100%)}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:760px){.topnav{padding:17px 20px}.topnav .eyebrow{font-size:9px}.hero{padding-top:88px;min-height:100svh}.hero-art{width:96%;height:27vh;min-height:190px;margin-top:0}.hero h1{font-size:clamp(37px,9.8vw,65px)}.hero .sapo{font-size:16px;line-height:1.58;margin:11px 0 20px}.opening{grid-template-columns:1fr}.stage{height:45svh;min-height:300px;top:0;border-right:0;border-bottom:1px solid #e5daca;z-index:4}.stage-eyebrow{top:5%;left:6%;font-size:9px}.stage-scene{inset:7% 6% 21%}.stage-bottle svg{max-height:275px;width:min(63%,310px)}.stage-caption{bottom:3.5%;font-size:11px}.story-steps{padding:0 0 20vh}.step{padding:16vh 7% 22vh;min-height:70vh;background:#faf1e3eb;z-index:1}.step p{font-size:18px;line-height:1.68}.step h2{font-size:34px}.stage-row{gap:8px}.import-card{padding:10px;margin:7px 0;box-shadow:3px 3px 0 #e6d4b7}.import-card .num{font-size:19px}.import-card strong{font-size:11px}.import-card small{font-size:9px}.factory-vis svg{max-width:240px}.factory-name{font-size:24px}.factory-share strong{font-size:36px}.factory-share span{font-size:10px}.wilmar-scene svg{max-width:220px}.wilmar-name{font-size:33px}.wilmar-kpi{font-size:12px}.wilmar-kpi b{font-size:23px}.chapter-lead{padding:95px 0 10px}.chapter-lead h2{font-size:clamp(35px,8.5vw,56px)}.body-copy{font-size:19px;line-height:1.7;margin:24px auto}.graphic{margin:45px auto 55px;border-radius:13px;padding:23px 18px}.graphic h3{font-size:27px}.hundred-bottles{grid-template-columns:repeat(10,1fr);gap:7px 2px}.small-bottle{height:35px}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-tile{min-height:112px;padding:18px 12px}.metric-tile b{font-size:30px}.metric-tile span{font-size:12px}.donut{width:240px;height:240px}.production-visual{grid-template-columns:1fr 1fr;gap:10px}.flow-input{grid-column:1}.flow-plant{grid-column:2}.flow-plant:after{display:none}.flow-results{grid-column:1/-1;padding:12px}.flow-bar{height:15px}.chain{grid-template-columns:repeat(2,1fr);gap:17px}.chain-part:not(:last-child):after{display:none}.retail-head,.retail-row{grid-template-columns:minmax(90px,1.2fr) minmax(125px,1.2fr) 55px;gap:8px}.retail-row .prod{font-size:11px}.retail-delta{font-size:12px}.retail-head{font-size:9px}.chart-chip{padding:8px 10px;font-size:11px}.closing{padding:68px 22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.chapter .reveal{opacity:1;transform:none}}


/* CALOFIC OWNERSHIP: original Wine canvas+GSAP tweening method, one continuous scene */
.wine-ownership{position:relative;width:min(1200px,100%);height:285vh;min-height:1800px;margin:42px auto 42px;isolation:isolate;overflow:clip;background:transparent;}
.wine-ownership-sticky{position:sticky;top:0;height:100vh;min-height:580px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:#f8eddb;overflow:hidden;padding:clamp(14px,2.4vh,25px) clamp(12px,3vw,38px) clamp(8px,1.5vh,18px);}
.wine-ownership:before{content:'';position:absolute;inset:0;border-top:1px solid #e6d6bb;border-bottom:1px solid #e6d6bb;pointer-events:none;}
.wine-ownership-upper{width:100%;max-width:1020px;min-height:140px;flex-shrink:0;position:relative;z-index:3;}
.wine-ownership-kicker{font-family:var(--sans);font-size:11px;font-weight:800;letter-spacing:.12em;color:#876c52;margin-bottom:6px;}
.wine-ownership-titles{position:relative;min-height:112px;}
.wine-own-title{position:absolute;top:0;left:0;right:175px;opacity:0;transform:translateY(13px);transition:opacity .32s ease,transform .4s ease;pointer-events:none;}
.wine-own-title.active{opacity:1;transform:translateY(0)}
.wine-own-title h3{margin:0 0 3px;font-family:OfflineSans,Arial,Helvetica,sans-serif;font-size:clamp(23px,3.1vw,44px);letter-spacing:-.045em;line-height:1.11;color:#4b2b5e;font-weight:700;}
.wine-own-title p{font-family:OfflineSans,Arial,Helvetica,sans-serif;font-size:clamp(11px,1.2vw,14px);line-height:1.5;color:#735e50;margin:5px 0 0;}
.wine-own-percent{position:absolute;right:0;top:38px;font-family:OfflineSans,Arial,sans-serif;letter-spacing:-.07em;font-weight:800;font-size:clamp(35px,6.5vw,86px);color:#587b9a;transition:color .35s;text-align:right;line-height:1}
.wine-ownership-visual{width:100%;max-width:1000px;flex:1 1 auto;min-height:240px;position:relative;margin:0 auto;overflow:hidden;}
#wineOwnershipCanvas{display:block;width:100%;height:100%;}
.wine-ownership-bottom{width:100%;max-width:1000px;min-height:88px;flex-shrink:0;padding:4px 0;position:relative;z-index:3;}
.wine-ownership-legend{display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-family:OfflineSans,Arial,sans-serif;font-size:11px;color:#5a5262;font-weight:700;margin-bottom:10px;}
.wine-ownership-legend span{white-space:nowrap}
.wine-ownership-legend i{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-1px;border-radius:2px}
.wine-ownership-legend .blue{background:#6a7fca}.wine-ownership-legend .gold{background:#e5bc46}.wine-ownership-legend .purple{background:#b24978}
.wine-ownership-progress{height:3px;background:#dfcbb5;overflow:hidden;border-radius:3px;}
.wine-ownership-progress i{display:block;height:100%;width:0;background:#56315e;}
#wineOwnNote{font-family:OfflineSans,Arial,Helvetica,sans-serif;font-size:11px;color:#786958;line-height:1.4;margin:10px 0 0}
.wine-ownership-scroll-spacer{height:100%;pointer-events:none}
#stageCaption,.stage-eyebrow{display:none!important}
.wine-own-percent{display:none!important}
.palm-illus{display:none!important}
.donut:after{content:"234.334"}
.factory-caption,.flow-callout,#valGraphic .small-note{display:none!important}
.val-process-stage{grid-template-columns:1fr;gap:16px}
.process-intake,.process-outputs{opacity:0;visibility:hidden;transition:opacity .45s ease}
.val-process-stage.running .process-intake,.val-process-stage.running .process-outputs{opacity:1;visibility:visible}
.process-intake,.process-outputs{justify-self:center;width:min(680px,100%)}
.process-outputs{display:flex;flex-direction:row;justify-content:center;gap:26px;flex-wrap:wrap}
.output-card{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .5s ease}
.val-process-stage.running .output-card{opacity:1;transform:none}
@media(max-width:760px){.val-process-stage{grid-template-columns:1fr}.process-outputs{flex-direction:column;align-items:center}}
@media(max-width:720px){.wine-ownership{height:255vh;min-height:1500px;margin:24px auto}.wine-ownership-sticky{height:100svh;min-height:480px;padding:12px 10px 8px}.wine-ownership-upper{min-height:126px}.wine-own-title{right:95px}.wine-own-title h3{font-size:clamp(20px,5vw,28px)}.wine-own-title p{font-size:11px}.wine-own-percent{top:42px;font-size:43px}.wine-ownership-bottom{min-height:82px}.wine-ownership-legend{gap:12px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.wine-own-title{transition:none}}


/* --- v22 chart-language alignment overrides --- */
.calofic-finance-graphic .finance-selected{gap:10px;align-items:baseline;flex-wrap:wrap}
.calofic-finance-graphic .finance-selected strong{font-family:OfflineSans,Arial,sans-serif;letter-spacing:-.04em}
.finance-chart-window{overflow:visible}
.finance-chart-svg{overflow:visible}
.finance-bar.revenue,.finance-bar.profit{stroke:#f8f1e4;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round;paint-order:stroke fill markers}
.finance-bar.profit{stroke-width:1.6}
.finance-bar-group .finance-bottle-label{pointer-events:none}
.finance-bar.revenue{filter:drop-shadow(0 1px 0 rgba(19,94,66,.12))}
.finance-bar.profit{filter:drop-shadow(0 1px 0 rgba(228,184,50,.14))}

.editorial-wilmar .metric-grid.sketch-metric-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 28px!important;margin-top:26px!important}
.editorial-wilmar .metric-tile.sketch-metric{background:transparent!important;border:0!important;box-shadow:none!important;padding:8px 4px 14px!important;min-height:auto!important;position:relative;display:block!important}
.editorial-wilmar .metric-tile.sketch-metric:before{content:'';position:absolute;left:2px;right:20%;bottom:6px;height:16px;border-bottom:2px solid #7ea087;border-left:2px solid transparent;border-right:2px solid transparent;border-radius:55% 45% 52% 48% / 65% 35% 55% 45%;opacity:.65;transform:rotate(-1.5deg)}
.editorial-wilmar .metric-tile.sketch-metric:nth-child(2):before{right:14%;transform:rotate(.8deg)}
.editorial-wilmar .metric-tile.sketch-metric:nth-child(3):before{right:28%;transform:rotate(-.6deg)}
.editorial-wilmar .metric-tile.sketch-metric:nth-child(4):before{right:12%;transform:rotate(1.1deg)}
.editorial-wilmar .metric-tile.sketch-metric b{display:block;font-family:OfflineSans,Arial,sans-serif!important;font-size:clamp(42px,4.4vw,64px)!important;line-height:.95!important;color:#156545!important;letter-spacing:-.05em;text-shadow:1px 1px 0 rgba(21,101,69,.03)}
.editorial-wilmar .metric-tile.sketch-metric span{display:block;margin-top:8px;font-family:Inter,Arial,sans-serif!important;font-size:15px!important;line-height:1.35!important;color:#4f6d5b!important;font-weight:700!important;max-width:26ch}

.retail-row .bartrack{height:14px!important;background:transparent!important;border-radius:0!important;overflow:visible!important;position:relative}
.retail-row .bartrack:before{content:'';position:absolute;inset:1px 0 1px 0;background:#e1e9de;clip-path:polygon(0% 43%,3% 33%,8% 37%,14% 28%,21% 34%,30% 27%,40% 35%,49% 30%,59% 36%,70% 31%,81% 36%,90% 28%,96% 35%,100% 42%,100% 66%,95% 73%,88% 69%,79% 76%,68% 68%,58% 73%,48% 67%,39% 74%,28% 67%,19% 73%,10% 67%,4% 72%,0% 64%);opacity:.92}
.retail-row .bartrack span{display:block;height:100%;clip-path:polygon(0% 46%,4% 33%,9% 38%,14% 27%,22% 35%,30% 28%,39% 36%,48% 30%,58% 37%,69% 31%,80% 37%,90% 29%,97% 36%,100% 42%,100% 66%,96% 73%,88% 69%,79% 76%,69% 68%,59% 73%,49% 68%,39% 75%,28% 67%,18% 73%,10% 67%,4% 72%,0% 64%);border-radius:0!important}
.retail-row .bartrack.new span{background:#e1b534!important}
.retail-row .bartrack span{background:#8db19a!important}
.retail-row:nth-child(odd) .bartrack{transform:rotate(-.25deg)}
.retail-row:nth-child(even) .bartrack{transform:rotate(.18deg)}

@media(max-width:760px){
  .editorial-wilmar .metric-grid.sketch-metric-grid{grid-template-columns:1fr 1fr!important;gap:14px 16px!important}
  .editorial-wilmar .metric-tile.sketch-metric b{font-size:clamp(28px,8vw,40px)!important}
  .editorial-wilmar .metric-tile.sketch-metric span{font-size:12px!important}
}





:root{--paper:#f5eddb;--paper2:#f6efe0;--ink:#1c1222;--quiet:#6c6256;--purple:#4b2a62;--purple2:#7a6180;--yellow:#e7c12f;--yellow2:#ffe28a;--line:#ddd0bb;--sans:OfflineSans, Arial, Helvetica, sans-serif;--serif:Georgia, "Times New Roman", serif;}
body{background:#f5eddb;color:#1d1322}
.topnav{display:none}
.hero{background:#f5eddb;min-height:auto;padding:0}
#wineish-note{font-family:var(--sans)}
#container-intro{min-height:100vh;margin:auto auto 18vh;position:relative;padding-top:18px}
#title-image{width:100%;top:0;z-index:10;box-shadow:0 0 0 #ccc}
#title-image img{max-width:60%;display:block;margin:auto}
@media (min-width:800px){#title-image img{width:40%}}
@media (min-width:1200px){#title-image img{width:33%}}
@media (min-width:1600px){#title-image img{width:27%}}
#title-text{margin:-.75rem 0 3rem;font-family:var(--sans)}
#title-text #title-header{position:relative;text-align:center;padding:0 16px}
#title-text #title-header h2{font-size:clamp(2.5rem,6vw,5.35rem);margin:0;position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;letter-spacing:-.045em;line-height:.96;text-transform:uppercase}
#title-text #title-header h2:nth-child(1){color:transparent;text-shadow:0 0 3px #d4cdd2}
#title-text #title-header h2:nth-child(2){background:linear-gradient(to right,#532c69,#111);-webkit-background-clip:text;background-clip:text;color:transparent;animation:wave 10s ease-in-out infinite}
#title-text #title-header h2:nth-child(3){position:relative;visibility:hidden;z-index:-1}
#title-text h3,#title-text h4{text-align:center;font-family:var(--sans);margin:0;color:#2a1835}
#title-text h3{font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.05;margin-top:.28rem}
#title-text h4{font-size:clamp(1.1rem,2vw,1.55rem);font-weight:700;margin-top:.25rem}
#intro-text{width:90%;margin:auto}
@media (min-width:800px){#intro-text{width:50%}}
@media (min-width:1600px){#intro-text{width:36%}}
#intro-text p{width:85%;margin:1em auto;font-size:1.18em;line-height:1.35;font-family:Arial,Helvetica,sans-serif}
.scroll-arrow{font-family:var(--sans);margin:3rem auto 0;text-align:center;animation:scroll 5s ease-in-out infinite;color:#2a1835}
.lowlight{display:inline-block;animation:blink 5s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0;transform:scale(.7)}}
@keyframes wave{0%,100%{clip-path:polygon(0% 64%,11% 61%,22% 58%,31% 56%,43% 57%,50% 59%,59% 62%,68% 65%,78% 65%,89% 63%,97% 60%,100% 58%,100% 100%,0% 100%)}50%{clip-path:polygon(0 54%,9% 57%,18% 60%,28% 60%,38% 58%,45% 54%,57% 52%,68% 53%,75% 56%,84% 59%,91% 61%,100% 61%,100% 100%,0% 100%)}}
@keyframes scroll{0%,100%{transform:translateY(1rem)}50%{transform:translateY(-1rem)}}

.opening{display:grid;grid-template-columns:minmax(320px,46vw) minmax(0,1fr);gap:0;align-items:start;background:#f5eddb}
@media (max-width:960px){.opening{grid-template-columns:1fr}.stage{position:relative;top:auto;height:68vh}.story-steps{padding-top:0}}
.stage{position:sticky;top:0;height:100vh;display:flex;align-items:center;justify-content:center;background:#f5eddb;border-right:0;overflow:hidden}
.stage-eyebrow{position:absolute;left:18px;top:22px;font-size:14px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#8f764d}
.stage-scene{position:absolute;inset:48px 10px 28px;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .45s ease,transform .6s ease;transform:translateY(8px)}
.stage-scene.active{opacity:1;pointer-events:auto;transform:none}
.stage-caption{position:absolute;left:34px;bottom:18px;right:34px;text-align:center;font-size:14px;font-weight:700;color:#655847}
.story-steps{padding:5vh 0 14vh}
.step{min-height:88vh;padding:16vh clamp(24px,7vw,110px) 17vh;display:flex;flex-direction:column;justify-content:center;max-width:900px;opacity:.34;transition:opacity .55s}
.step.active{opacity:1}
.step .step-kicker{font-size:11px;letter-spacing:.19em;font-weight:900;text-transform:uppercase;color:#b08b49;margin-bottom:18px;font-family:var(--sans)}
.step h2{font-family:var(--sans);font-size:clamp(34px,4.3vw,61px);line-height:1.02;letter-spacing:-.052em;color:var(--purple);max-width:590px;margin:0 0 30px}
.step p{font-family:Arial,Helvetica,sans-serif;font-size:clamp(18px,1.68vw,24px);line-height:1.6;max-width:600px;margin:12px 0;color:#2c242a}
.step .data-accent{font:bold clamp(25px,3vw,42px) var(--sans);color:var(--purple);margin-top:14px}
.step .small-caption{font-family:var(--sans);font-size:14px;font-weight:700;color:#756651}
.wineish-svg{width:min(95%,620px);height:auto;display:block}
.sketch{fill:none;stroke:#0b0607;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.sketch.pale{stroke:#d4cfb0;stroke-width:3}
.leaf-fill{fill:#d5b859;stroke:#c1bc96;stroke-width:3}
.oil-fill-wave{fill:#fff0a3;opacity:.92}
.label-model{font-family:var(--sans);font-size:46px;fill:#13090b;font-weight:900;letter-spacing:-.05em}
.callout-text{font-family:var(--sans);font-size:14px;fill:#171013}
.arrow,.arrow-tip{fill:none;stroke:#f4f1db;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.callout-group{opacity:.3;transition:opacity .45s ease}
.callout-group.show{opacity:1}
.import-card.show{opacity:1;transform:none}
.import-card{transform:none}
.factory-vis.wineish-factory-vis{width:98%;max-width:560px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}
.factory-name{font-family:var(--sans);font-weight:900;letter-spacing:.02em;font-size:clamp(42px,7vw,84px);color:#141014;opacity:0;transform:translateY(14px);transition:.6s}
.factory-name.show{opacity:1;transform:none}
.factory-share{opacity:0;transform:translateY(14px);transition:.6s;text-align:center}
.factory-share.show{opacity:1;transform:none}
.factory-share strong{font-size:clamp(35px,6vw,76px);color:#4b2a62;letter-spacing:-.06em;font-family:var(--sans)}
.factory-share span{display:block;text-align:center;font-size:13px;max-width:320px;line-height:1.5;font-weight:700;font-family:Arial,Helvetica,sans-serif}
.wilmar-scene{flex-direction:column;gap:14px;text-align:center}
.wilmar-name{font-size:clamp(44px,7vw,86px);font-weight:900;letter-spacing:-.07em;color:#141014;line-height:1;font-family:var(--sans)}
.wilmar-kpi{font-family:Arial,Helvetica,sans-serif;font-size:18px;font-weight:700;color:#44384c;opacity:0;transform:translateY(12px);transition:.5s}
.wilmar-kpi.show{opacity:1;transform:none}
.wilmar-kpi b{display:block;font-family:var(--sans);font-size:35px;color:#3f2b50}
.extra-cap{transform:translate(-20px,18px);opacity:0;transition:opacity .45s,transform .6s}.extra-cap.visible{opacity:1;transform:translate(0,0)}
.glass,.glass-highlight,.bottle-cap{}
.chapter-head h2,.chapter h2,.big-stat .num,.graphic h3,.section-title{font-family:var(--sans)}
@media (max-width:760px){#title-text #title-header h2{font-size:clamp(2.55rem,10vw,4.1rem);white-space:normal;width:92%;line-height:1.02}#title-text h3{font-size:1.65rem}#title-text h4{font-size:1rem}#intro-text p{width:94%;font-size:1.05rem}.stage-caption{font-size:13px;left:14px;right:14px}.stage-eyebrow{font-size:11px;left:14px;top:16px}.step{padding:14vh 20px 16vh}}



/* Studio corrections: faithfully return to Wine & Math's spacious matte-cream, illustrated aesthetic. */
html,body{overflow-x:clip!important;overflow-y:visible!important}
#container-intro{min-height:100svh;margin-bottom:5vh!important;padding-top:22px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}
#title-image{height:160px;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}
#title-image img,#title-image img[alt]{height:145px!important;max-height:145px!important;width:auto!important;max-width:240px!important;object-fit:contain}
#title-text{width:100%;margin:10px auto 33px!important;text-align:center}
#title-text #title-header{width:100%;max-width:1290px;margin:auto}
#title-text #title-header h2{font-size:clamp(2.4rem,5.9vw,5.4rem)!important;line-height:1.05!important;white-space:normal!important;max-width:1230px;width:calc(100% - 36px)!important;letter-spacing:-.042em!important;overflow-wrap:normal}
#title-text #title-header h2:nth-child(3){display:block;position:relative;opacity:0;visibility:hidden}
#title-text h3{margin:16px 0 0!important;font-size:clamp(26px,3.5vw,46px)!important}
#title-text h4{margin:4px 0 0;font-size:clamp(17px,2.1vw,26px)!important}
#intro-text{width:min(840px,80%);margin:0 auto}
#intro-text p{font-family:Arial,Helvetica,sans-serif;width:min(760px,90%);font-size:clamp(17px,1.6vw,22px)!important;line-height:1.45!important;color:#1b181b;margin:18px auto}
.scroll-arrow{margin-top:38px!important}
.stage-scene{inset:7% 2% 14%}
.wineish-svg{max-width:600px;width:96%;height:auto;max-height:72vh;overflow:visible}
.bottle-svg{max-width:470px;height:min(80vh,680px)}
.imports-svg{width:100%;max-width:680px;max-height:65vh;overflow:visible}
.import-card{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;transform:none!important;opacity:.18;transition:opacity .4s ease!important}
.import-card.show{opacity:1!important}
.callout-text{font-family:Arial,Helvetica,sans-serif;font-size:18px!important;font-weight:700;fill:#221922;letter-spacing:-.025em}
.arrow,.arrow-tip{stroke:#fffbea;stroke-width:4.5}
.stage:before{display:none}
.stage-eyebrow{font-family:OfflineSans,Arial,sans-serif;font-weight:800}
.stage-caption{font-family:Arial,Helvetica,sans-serif;bottom:35px}
.factory-morph-svg{max-width:510px}
.factory-postmorph{opacity:0;transition:opacity .65s .55s}
.stage-scene.active .factory-postmorph{opacity:1}
.factory-mini-bottles{fill:#f3c837;stroke:#150f15;stroke-width:2.6;stroke-linejoin:round}
.stage-scene.active .factory-mini-bottles{animation:factoryConveyor 2.4s ease-in-out .65s 1 both}
@keyframes factoryConveyor{0%{transform:translateX(-100px);opacity:0}70%{transform:translateX(10px);opacity:1}100%{transform:translateX(0);opacity:1}}
.chapter,.chapter:nth-of-type(even){background:#f5eddb!important}
.graphic{background:transparent!important;border:none!important;box-shadow:none!important}
.body-copy{font-family:Arial,Helvetica,sans-serif;font-size:clamp(18px,1.6vw,22px);line-height:1.69}
.graphic h3,.chapter-lead h2{font-family:OfflineSans,Arial,sans-serif}
/* Use a universally Vietnamese-complete face for running copy. Headline uses original bundled Wine font. */
.step p,.chapter p,.body-copy p,.graphic p{font-family:Arial,"DejaVu Sans",sans-serif}
@media(max-width:960px){.opening{grid-template-columns:1fr}.stage{height:56vh;min-height:410px;position:sticky;top:0;z-index:4}.stage-scene{inset:8% 4% 11%}.story-steps{position:relative;z-index:5;background:#f5eddb}.step{min-height:78vh}.imports-svg{max-height:48vh}}
@media(max-width:760px){#container-intro{min-height:90svh;padding-top:12px}#title-image{height:110px}#title-image img{height:100px!important;max-height:100px!important}#title-text{margin-bottom:19px!important}#title-text #title-header h2{font-size:clamp(2.0rem,9vw,3.4rem)!important;width:94%!important}#title-text h3{margin-top:8px!important}#intro-text{width:94%}#intro-text p{width:94%;font-size:17px!important;line-height:1.5!important}.wineish-svg{max-height:44vh}.imports-svg{max-height:41vh}.stage{height:48vh;min-height:320px}.stage-eyebrow{font-size:9px}.stage-caption{bottom:9px;font-size:11px}.callout-text{font-size:16px!important}.factory-name{font-size:38px}.factory-share strong{font-size:38px}}
.step h2{font-size:clamp(32px,3.9vw,52px)!important;text-wrap:balance}
@media(max-width:960px){.opening{display:block!important}.stage{position:sticky!important;top:0!important;height:46vh;min-height:300px;z-index:10}.story-steps{background:transparent!important;position:relative;z-index:1}.step{padding:50vh 30px 15vh;min-height:110vh}}
@media(max-width:760px){.stage{height:44vh;min-height:290px}.step{padding:49vh 20px 17vh}.step h2{font-size:clamp(30px,8vw,40px)!important}}
@media(prefers-reduced-motion:reduce){.stage-scene.active .factory-mini-bottles{animation:none}}



.stage{background:#f5eddb!important}.stage:before{display:none}
.original-wine-viewport{position:absolute;inset:0;overflow:hidden;z-index:1;opacity:0;transition:opacity:.4s ease;pointer-events:none;background:#f5eddb}
.original-wine-viewport.on{opacity:1}
#originalWineEngine{position:absolute;left:0;top:0;width:166.666667%;height:100%;border:0;display:block;pointer-events:none}
.stage-scene[data-stage="bottle"],.stage-scene[data-stage="imports"]{position:absolute;z-index:3;inset:0!important;pointer-events:none;transform:none!important}
.wine-native-import .wine-import-overlay{position:absolute;inset:0;z-index:4;pointer-events:none}
.wine-import-marker{position:absolute;left:53%;right:3%;width:44%;display:flex;align-items:center;justify-content:flex-start;background:none!important;box-shadow:none!important;border:none!important;opacity:0;transform:translateX(12px)!important;transition:transform .7s ease,opacity .7s ease!important;font-size:clamp(13px,1.18vw,18px);font-family:Arial,sans-serif;font-weight:650;color:#26172a;line-height:1.27;text-shadow:0 0 4px #f5eddb;max-width:400px}
.wine-import-marker:before{content:'↖';font-size:clamp(30px,3.8vw,52px);margin-right:10px;font-family:Georgia,serif;font-weight:400;color:#ffecc3;text-shadow:1px 1px #ccb893;transform:rotate(-15deg);flex-shrink:0}
.wine-import-marker:nth-child(1){top:29%}.wine-import-marker:nth-child(2){top:48%}.wine-import-marker:nth-child(3){top:67%}
.wine-import-marker.show{opacity:1!important;transform:translateX(0)!important}
.wine-surplus{font-family:Arial,sans-serif;position:absolute;z-index:5;top:55%;left:66%;border-radius:4px;border:2px solid #8a7f52;padding:10px 15px;font-size:clamp(16px,1.9vw,27px);font-weight:800;color:#4c2e5a;background:#f7e6bdc9;opacity:0;transform:translate(-20px,15px);transition:opacity .6s,transform .7s}.wine-surplus.visible{opacity:1;transform:translate(0,0)}.wine-surplus small{display:block;font-size:12px;font-weight:400}
.stage-caption{z-index:7;pointer-events:none;background:#f5eddbc4;left:9%;width:82%;bottom:4%;padding:3px 10px}
.stage-eyebrow{z-index:7}
@media(max-width:760px){#originalWineEngine{left:48px;width:1024px;height:860px;transform-origin:top left;transform:scale(calc(100vw / 1024px))}.original-wine-viewport{height:100%}.stage-caption{bottom:3%}.wine-import-marker{font-size:10px;left:53%;right:3%;width:44%}.wine-import-marker:before{font-size:20px;margin-right:4px}.wine-import-marker:nth-child(1){top:24%}.wine-import-marker:nth-child(2){top:46%}.wine-import-marker:nth-child(3){top:66%}.wine-surplus{top:54%;left:58%;font-size:14px;padding:7px}.wine-surplus small{font-size:9px}}



/* Match Wine: ink lettering and white continuous drawn arrows, not UI callout arrows. */
.wine-native-import .wine-import-overlay{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:visible}
.wine-annotation-arrows{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.wine-annotation-arrows .drawn-arrow{fill:none;stroke:#fffdf8;stroke-width:3.35;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:600;stroke-dashoffset:600;transition:stroke-dashoffset 1.15s cubic-bezier(.45,.05,.14,1);filter:drop-shadow(0 0 1px rgba(104,89,67,.20))}
.wine-annotation-arrows .drawn-arrow.visible{stroke-dashoffset:0}
.wine-native-import .wine-import-marker{position:absolute!important;left:60%!important;width:39%!important;right:1%!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#161316!important;letter-spacing:-.025em!important;font-family:'Comic Neue','Segoe Print','Comic Sans MS','Trebuchet MS',Arial,sans-serif!important;font-size:clamp(14px,1.57vw,22px)!important;font-weight:400!important;line-height:1.17!important;text-shadow:none!important;display:block!important;opacity:0;transform:translateX(10px)!important;transition:opacity .65s ease,transform .7s ease!important}
.wine-native-import .wine-import-marker::before{display:none!important;content:none!important}
.wine-native-import .wine-import-marker:nth-of-type(1){top:27%!important}
.wine-native-import .wine-import-marker:nth-of-type(2){top:47%!important}
.wine-native-import .wine-import-marker:nth-of-type(3){top:67%!important}
.wine-native-import .wine-import-marker.show{opacity:1!important;transform:translateX(0)!important}
.wine-native-import .wine-import-marker>span{display:block;max-width:230px}
/* More narrative distance: bottle assembly now occupies > 2 viewports. */
.opening .story-steps>.step:first-child{min-height:218vh;display:block;padding-top:23vh;padding-bottom:14vh}
.opening .story-steps>.step:first-child .bottle-story-sticky{position:sticky;top:27vh;max-width:100%;}
@media(max-width:760px){
 .opening .story-steps>.step:first-child{min-height:170vh;padding-top:16vh;padding-bottom:10vh}
 .opening .story-steps>.step:first-child .bottle-story-sticky{top:14vh}
 .wine-native-import .wine-import-marker{font-size:clamp(10px,2.65vw,13px)!important;left:59%!important;width:40%!important;line-height:1.24!important}
 .wine-native-import .wine-import-marker:nth-of-type(1){top:20%!important}
 .wine-native-import .wine-import-marker:nth-of-type(2){top:43%!important}
 .wine-native-import .wine-import-marker:nth-of-type(3){top:67%!important}
 .wine-annotation-arrows .drawn-arrow{stroke-width:2.5}
}
@media(prefers-reduced-motion:reduce){.wine-annotation-arrows .drawn-arrow{transition:none}.wine-native-import .wine-import-marker{transition:none!important}}



/* CALOFIC · matching hand-inked editorial asset family, 2026 */
.editorial-asset{display:block;overflow:visible;max-width:100%;height:auto;isolation:isolate}
.editorial-asset path,.editorial-asset ellipse{vector-effect:non-scaling-stroke}
.asset-draw{stroke-dasharray:1100;stroke-dashoffset:1100;transition:stroke-dashoffset 2.0s cubic-bezier(.23,.68,.24,1)}
.asset-leaf{opacity:.08;transform-origin:50% 62%;transform:scale(.82);transition:opacity 1s ease .25s,transform 1.4s cubic-bezier(.15,.8,.2,1) .25s}
.asset-fruit,.asset-pod,.asset-loose-bean{opacity:0;transform:translateY(-8px);transition:opacity .72s ease .75s,transform 1.1s cubic-bezier(.2,.8,.2,1) .75s}
.art-animate .asset-draw,.stage-scene.active .asset-draw{stroke-dashoffset:0}
.art-animate .asset-leaf,.stage-scene.active .asset-leaf{opacity:1;transform:scale(1)}
.art-animate .asset-fruit,.art-animate .asset-pod,.art-animate .asset-loose-bean,.stage-scene.active .asset-fruit,.stage-scene.active .asset-pod,.stage-scene.active .asset-loose-bean{opacity:1;transform:translateY(0)}
.asset-palm-fronds,.conveyor-machine,.val-roof-details{transform-origin:50% 90%}
.stage-scene.active .palm-fruit-clusters{animation:organic-stillness 6.2s ease-in-out infinite alternate}
@keyframes organic-stillness{from{transform:rotate(-.6deg)}to{transform:rotate(1deg)}}
/* conveyor drawing belongs to the sticky left-hand narrative stage */
.art-factory-vis{width:100%;max-width:690px;gap:4px;max-height:87vh}
.art-factory-vis svg.conveyor-drawing{width:min(100%,650px);height:auto;max-width:650px;max-height:49vh}
.conveyor-bottle{opacity:0;transform-box:fill-box;transform-origin:center 100%;transition:opacity .75s ease,filter .4s}
.stage-scene.active .conveyor-bottle{opacity:1;animation:editorial-bottle-arrive 1.75s cubic-bezier(.2,.75,.18,1) both;animation-delay:var(--delay)}
@keyframes editorial-bottle-arrive{0%{translate:-38px 8px;opacity:0}75%{translate:3px 0;opacity:1}100%{translate:0 0;opacity:1}}
.conveyor-oil-flow{stroke-dasharray:90;stroke-dashoffset:90;transition:stroke-dashoffset 1s ease 1.25s}
.stage-scene.active .conveyor-oil-flow{stroke-dashoffset:0}
.conveyor-wheel{transform-origin:50% 50%;transition:transform 2s ease}
.stage-scene.active .conveyor-wheel{transform:rotate(5deg)}
.wilmar-scene{gap:9px!important}
.wilmar-editorial-pair{width:min(96%,670px);max-height:47vh;display:flex;align-items:center;justify-content:center;gap:3%;position:relative;margin:0 auto;isolation:isolate}
.wilmar-editorial-pair .wilmar-palm{flex:1.04;min-width:0}.wilmar-editorial-pair .wilmar-soy{flex:.92;min-width:0}
.wilmar-editorial-pair svg{width:100%;height:auto!important;max-height:45vh}
.wilmar-scene .wilmar-name{font-size:clamp(30px,5vw,61px);margin-top:-15px}
.wilmar-scene .wilmar-kpi{font-size:12px}.wilmar-scene .wilmar-kpi b{font-size:clamp(19px,2.6vw,30px)}
/* VAL illustration: editorial ink, not architectural stock vector */
.factory-graphic{background:#f5eddb!important;border-radius:4px;border:0!important;box-shadow:none!important}
.factory-graphic .val-factory{background:transparent;max-height:480px;border-radius:0;margin:17px auto 8px;width:100%}
.factory-graphic .val-warehouse,.factory-graphic .val-silos,.factory-graphic .val-foreground{opacity:.03;transition:opacity .8s ease .14s}
.factory-graphic.art-animate .val-warehouse,.factory-graphic.art-animate .val-silos,.factory-graphic.art-animate .val-foreground{opacity:1}
.val-sign{opacity:0;transition:opacity .8s ease 1.2s}.factory-graphic.art-animate .val-sign{opacity:1}
.factory-graphic .factory-caption{font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(13px,1.5vw,18px);letter-spacing:0}
.factory-graphic .small-note{font-family:Georgia,serif;font-style:italic;font-size:12px;color:#9f8a6c}
/* mobile layouts keep both crop and hand-drawn strokes visible */
@media(max-width:760px){.art-factory-vis svg.conveyor-drawing{max-height:34vh}.art-factory-vis .factory-name{font-size:28px}
.wilmar-editorial-pair{width:100%;max-height:30vh}.wilmar-editorial-pair svg{max-height:29vh}.wilmar-scene .wilmar-name{margin-top:0}
.factory-graphic .val-factory{width:109%;max-width:none;margin-left:-4.5%;max-height:310px}}
@media(prefers-reduced-motion:reduce){.asset-draw{stroke-dashoffset:0!important}.asset-leaf,.asset-fruit,.asset-pod,.asset-loose-bean,.conveyor-bottle{opacity:1!important;transform:none!important;animation:none!important}}



/* Visibility never relies on JavaScript observers: fallback is always visible */
.editorial-asset .asset-draw{stroke-dasharray:none!important;stroke-dashoffset:0!important;transition:none!important}
.editorial-asset .asset-leaf,.editorial-asset .asset-fruit,.editorial-asset .asset-pod,.editorial-asset .asset-loose-bean{opacity:1!important;transform:none!important;transition:none!important}
.editorial-asset .conveyor-bottle{opacity:1!important;animation:none!important;transition:none!important}
.editorial-asset .conveyor-oil-flow{stroke-dasharray:none!important;stroke-dashoffset:0!important}
.factory-graphic .val-warehouse,.factory-graphic .val-silos,.factory-graphic .val-foreground,.factory-graphic .val-sign{opacity:1!important;transition:none!important}
/* Display transition is parent-owned, not an element-dependent MutationObserver */
.stage-scene.active .editorial-asset{animation:calofic-ink-arrive .85s cubic-bezier(.2,.7,.2,1) both}
.factory-graphic.visible .editorial-asset{animation:calofic-ink-arrive 1s cubic-bezier(.2,.7,.2,1) both}
@keyframes calofic-ink-arrive{from{opacity:.35;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion: reduce){.stage-scene.active .editorial-asset,.factory-graphic.visible .editorial-asset{animation:none!important}}



#container-intro{padding-top:10px;min-height:112svh}
#title-image{height:auto!important;max-width:min(1180px,90vw);margin:0 auto 18px;border-radius:18px;overflow:hidden;box-shadow:0 22px 50px rgba(69,47,61,.14)}
#title-image img,#title-image img[alt]{width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;display:block}
#intro-text{width:min(920px,84vw)}
#intro-text p{color:#4a413b}
/* hand-drawn editorial Wilmar area */
.editorial-wilmar{background:#f4ebdb;color:var(--ink);border:1px solid #dfd2c0;box-shadow:0 14px 30px rgba(58,40,54,.06)}
.editorial-wilmar .visual-note{color:#9a7d51}
.editorial-wilmar h3{color:var(--purple)}
.wilmar-editorial-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.wilmar-dek{font-family:var(--serif);font-size:18px;line-height:1.6;color:#5b4c4f;max-width:690px;margin:10px 0 0}
.wilmar-sketch{width:220px;max-width:28vw;height:auto;flex:0 0 auto}
.metric-wrap{background:#f4ebdb;color:var(--ink)}
.metric-grid{gap:16px}
.metric-tile{background:#fff7ea;border:1px solid #dbc8ac;box-shadow:5px 6px 0 #eadbc3;opacity:.08;transform:translateY(14px) rotate(-.35deg)}
.metric-wrap.visible .metric-tile{opacity:1}
.metric-wrap.visible .metric-tile:nth-child(odd){transform:rotate(-.2deg)}
.metric-wrap.visible .metric-tile:nth-child(even){transform:rotate(.25deg)}
.metric-tile b{color:#4c2f5c}
.metric-tile span{color:#6f5c53}
.metric-wrap .graphic-caption{color:#776558;border-top-color:#dac8b0}
.editorial-palm{background:#f7edde;border:1px solid #dfd1bd;box-shadow:0 14px 30px rgba(58,40,54,.06)}
.palm-layout{align-items:center;justify-content:space-between;gap:30px}
.palm-illus{max-width:280px;display:flex;flex-direction:column;gap:12px;align-items:center}
.palm-sketch{width:min(260px,72vw);height:auto}
.palm-note{margin:0;font-size:14px;line-height:1.6;color:#6c5b54;text-align:center}
.palm-chart{display:flex;align-items:center;gap:28px;flex-wrap:wrap;justify-content:center}
.donut{box-shadow:inset 0 0 0 9px #f7edde, 0 14px 26px rgba(73,54,45,.05)}
.donut:before{inset:29%;background:#f7edde}
.donut:after{content:''}
.donut-legend .item{font-size:15px}
.donut-legend .item b{font-size:23px}
/* VAL integrated process */
.factory-graphic{background:#f2e8da;border:1px solid #dfd2c0;box-shadow:0 14px 30px rgba(58,40,54,.06)}
.factory-topline{align-items:flex-start}.factory-topline h3{margin:4px 0 8px}
.factory-topline .play-btn{margin-top:14px}
.val-process-stage{position:relative;display:grid;grid-template-columns:minmax(140px,180px) 1fr minmax(230px,260px);gap:18px;align-items:center;margin-top:18px}
.process-intake,.process-outputs{position:relative;z-index:2}
.process-intake{display:flex;flex-direction:column;align-items:center;gap:12px}
.input-stack{position:relative;width:122px;height:160px}
.bean-bag{position:absolute;width:74px;height:88px;border-radius:10px 10px 18px 18px;background:#f2e3b8;border:2.2px solid #3d2b3e;box-shadow:4px 5px 0 #ead5ab;left:10px;top:48px;transform-origin:center center}
.bean-bag:before{content:'';position:absolute;left:12px;right:12px;top:13px;border-top:2px solid #baa37b}
.bean-bag:after{content:'ĐẬU';position:absolute;left:0;right:0;top:34px;text-align:center;font:700 12px/1 Arial,sans-serif;color:#786246;letter-spacing:.08em}
.bean-bag.bag1{transform:rotate(-10deg);left:0;top:52px}
.bean-bag.bag2{transform:rotate(8deg);left:24px;top:35px}
.bean-bag.bag3{transform:rotate(-4deg);left:48px;top:58px}
.intake-copy b{display:block;font-size:26px;color:var(--purple);white-space:nowrap}.intake-copy span{display:block;font-size:13px;text-align:center;color:#6d5d55}
.factory-center{position:relative}.factory-center .val-factory{margin:6px auto 0;background:#f6efe2}
.process-outputs{display:flex;flex-direction:column;gap:18px}
.output-card{display:flex;gap:10px;align-items:center;padding:14px 12px;background:#fff8ed;border:1px solid #dccab2;box-shadow:5px 6px 0 #eadac3;border-radius:12px;opacity:.36;transform:translateX(12px);transition:opacity .5s ease,transform .5s ease}
.output-card svg{width:84px;height:64px;flex:0 0 auto}
.output-copy span{display:block;font-size:13px;font-weight:800;color:#5a4950}
.output-copy b{display:block;font-size:24px;line-height:1.05;color:var(--purple);letter-spacing:-.03em;margin-top:4px}
.val-process-stage.running .output-card{opacity:1;transform:none}
.val-process-stage.running .meal{transition-delay:1.05s}.val-process-stage.running .oil{transition-delay:1.35s}
.val-process-stage:before,.val-process-stage:after{content:'';position:absolute;top:50%;height:2px;background:linear-gradient(90deg,#d8c7af,#c4b49d);z-index:1}
.val-process-stage:before{left:147px;width:calc(50% - 205px)}
.val-process-stage:after{right:240px;width:calc(50% - 148px)}
.val-process-stage.running .bag1{animation:bagRun1 1.3s ease forwards}.val-process-stage.running .bag2{animation:bagRun2 1.3s .12s ease forwards}.val-process-stage.running .bag3{animation:bagRun3 1.3s .24s ease forwards}
@keyframes bagRun1{0%{transform:rotate(-10deg) translate(0,0);opacity:1}65%{transform:rotate(-4deg) translate(195px,-8px);opacity:1}100%{transform:rotate(2deg) translate(285px,-4px);opacity:0}}
@keyframes bagRun2{0%{transform:rotate(8deg) translate(0,0);opacity:1}65%{transform:rotate(1deg) translate(170px,6px);opacity:1}100%{transform:rotate(-2deg) translate(260px,8px);opacity:0}}
@keyframes bagRun3{0%{transform:rotate(-4deg) translate(0,0);opacity:1}65%{transform:rotate(4deg) translate(145px,-2px);opacity:1}100%{transform:rotate(0deg) translate(235px,-2px);opacity:0}}
.flow-callout{font-size:12px;color:#776b63;margin-top:14px}
/* remove older sections if any remnants */
.chain,.closing,footer{display:none!important}
@media(max-width:760px){#container-intro{min-height:0;padding-top:8px}#title-image{max-width:100vw;border-radius:0;box-shadow:none}#title-image img{max-width:74%;width:74%}.wilmar-editorial-head{flex-direction:column}.wilmar-sketch{max-width:180px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px}.palm-layout{justify-content:center}.palm-chart{gap:18px}.val-process-stage{grid-template-columns:1fr;gap:18px}.val-process-stage:before,.val-process-stage:after{display:none}.process-intake{order:1}.factory-center{order:2}.process-outputs{order:3}.output-card svg{width:72px;height:56px}.factory-topline .small-note{display:block;width:100%}.intake-copy b{font-size:24px}}



/* COVER: constrain parent as well as the image. V11's later #title-image img[alt]
   rule carries !important, so changing just the image width was ineffective. */
#container-intro #title-image {
  width:min(760px, 66vw) !important;
  max-width:min(760px, 66vw) !important;
  height:auto !important;
  margin:0 auto 16px !important;
}
#container-intro #title-image img,
#container-intro #title-image img[alt] {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
}
/* Restore V12's moving Wine clip path. Do not redefine @keyframes wave. */
#container-intro #title-text #title-header h2 {
  white-space:nowrap !important;
  width:max-content;
  max-width:none;
  font-size:clamp(26px,4.15vw,62px) !important;
  line-height:1.05 !important;
}
/* Same continuously moving Wine-style clipped fill, its surface raised so roughly
   half the headline is filled rather than concealing the whole line. */
@keyframes wineHalfLiquidV14 {
  0% {clip-path:polygon(0.00% 50.00%,2.08% 56.60%,4.17% 62.72%,6.25% 67.95%,8.33% 71.97%,10.42% 74.57%,12.50% 75.71%,14.58% 75.45%,16.67% 74.00%,18.75% 71.63%,20.83% 68.64%,22.92% 65.34%,25.00% 61.97%,27.08% 58.71%,29.17% 55.65%,31.25% 52.77%,33.33% 50.00%,35.42% 47.23%,37.50% 44.35%,39.58% 41.29%,41.67% 38.03%,43.75% 34.66%,45.83% 31.36%,47.92% 28.37%,50.00% 26.00%,52.08% 24.55%,54.17% 24.29%,56.25% 25.43%,58.33% 28.03%,60.42% 32.05%,62.50% 37.28%,64.58% 43.40%,66.67% 50.00%,68.75% 56.60%,70.83% 62.72%,72.92% 67.95%,75.00% 71.97%,77.08% 74.57%,79.17% 75.71%,81.25% 75.45%,83.33% 74.00%,85.42% 71.63%,87.50% 68.64%,89.58% 65.34%,91.67% 61.97%,93.75% 58.71%,95.83% 55.65%,97.92% 52.77%,100.00% 50.00%,100% 100%,0% 100%)}
  25% {clip-path:polygon(0.00% 21.00%,2.08% 21.84%,4.17% 24.29%,6.25% 28.13%,8.33% 33.03%,10.42% 38.58%,12.50% 44.35%,14.58% 49.94%,16.67% 55.00%,18.75% 59.30%,20.83% 62.72%,22.92% 65.25%,25.00% 66.97%,27.08% 68.04%,29.17% 68.64%,31.25% 68.92%,33.33% 69.00%,35.42% 68.92%,37.50% 68.64%,39.58% 68.04%,41.67% 66.97%,43.75% 65.25%,45.83% 62.72%,47.92% 59.30%,50.00% 55.00%,52.08% 49.94%,54.17% 44.35%,56.25% 38.58%,58.33% 33.03%,60.42% 28.13%,62.50% 24.29%,64.58% 21.84%,66.67% 21.00%,68.75% 21.84%,70.83% 24.29%,72.92% 28.13%,75.00% 33.03%,77.08% 38.58%,79.17% 44.35%,81.25% 49.94%,83.33% 55.00%,85.42% 59.30%,87.50% 62.72%,89.58% 65.25%,91.67% 66.97%,93.75% 68.04%,95.83% 68.64%,97.92% 68.92%,100.00% 69.00%,100% 100%,0% 100%)}
  50% {clip-path:polygon(0.00% 50.00%,2.08% 43.40%,4.17% 37.28%,6.25% 32.05%,8.33% 28.03%,10.42% 25.43%,12.50% 24.29%,14.58% 24.55%,16.67% 26.00%,18.75% 28.37%,20.83% 31.36%,22.92% 34.66%,25.00% 38.03%,27.08% 41.29%,29.17% 44.35%,31.25% 47.23%,33.33% 50.00%,35.42% 52.77%,37.50% 55.65%,39.58% 58.71%,41.67% 61.97%,43.75% 65.34%,45.83% 68.64%,47.92% 71.63%,50.00% 74.00%,52.08% 75.45%,54.17% 75.71%,56.25% 74.57%,58.33% 71.97%,60.42% 67.95%,62.50% 62.72%,64.58% 56.60%,66.67% 50.00%,68.75% 43.40%,70.83% 37.28%,72.92% 32.05%,75.00% 28.03%,77.08% 25.43%,79.17% 24.29%,81.25% 24.55%,83.33% 26.00%,85.42% 28.37%,87.50% 31.36%,89.58% 34.66%,91.67% 38.03%,93.75% 41.29%,95.83% 44.35%,97.92% 47.23%,100.00% 50.00%,100% 100%,0% 100%)}
  75% {clip-path:polygon(0.00% 79.00%,2.08% 78.16%,4.17% 75.71%,6.25% 71.87%,8.33% 66.97%,10.42% 61.42%,12.50% 55.65%,14.58% 50.06%,16.67% 45.00%,18.75% 40.70%,20.83% 37.28%,22.92% 34.75%,25.00% 33.03%,27.08% 31.96%,29.17% 31.36%,31.25% 31.08%,33.33% 31.00%,35.42% 31.08%,37.50% 31.36%,39.58% 31.96%,41.67% 33.03%,43.75% 34.75%,45.83% 37.28%,47.92% 40.70%,50.00% 45.00%,52.08% 50.06%,54.17% 55.65%,56.25% 61.42%,58.33% 66.97%,60.42% 71.87%,62.50% 75.71%,64.58% 78.16%,66.67% 79.00%,68.75% 78.16%,70.83% 75.71%,72.92% 71.87%,75.00% 66.97%,77.08% 61.42%,79.17% 55.65%,81.25% 50.06%,83.33% 45.00%,85.42% 40.70%,87.50% 37.28%,89.58% 34.75%,91.67% 33.03%,93.75% 31.96%,95.83% 31.36%,97.92% 31.08%,100.00% 31.00%,100% 100%,0% 100%)}
  100% {clip-path:polygon(0.00% 50.00%,2.08% 56.60%,4.17% 62.72%,6.25% 67.95%,8.33% 71.97%,10.42% 74.57%,12.50% 75.71%,14.58% 75.45%,16.67% 74.00%,18.75% 71.63%,20.83% 68.64%,22.92% 65.34%,25.00% 61.97%,27.08% 58.71%,29.17% 55.65%,31.25% 52.77%,33.33% 50.00%,35.42% 47.23%,37.50% 44.35%,39.58% 41.29%,41.67% 38.03%,43.75% 34.66%,45.83% 31.36%,47.92% 28.37%,50.00% 26.00%,52.08% 24.55%,54.17% 24.29%,56.25% 25.43%,58.33% 28.03%,60.42% 32.05%,62.50% 37.28%,64.58% 43.40%,66.67% 50.00%,68.75% 56.60%,70.83% 62.72%,72.92% 67.95%,75.00% 71.97%,77.08% 74.57%,79.17% 75.71%,81.25% 75.45%,83.33% 74.00%,85.42% 71.63%,87.50% 68.64%,89.58% 65.34%,91.67% 61.97%,93.75% 58.71%,95.83% 55.65%,97.92% 52.77%,100.00% 50.00%,100% 100%,0% 100%)}
}
#container-intro #title-text #title-header h2:nth-child(2) {
  animation:wineHalfLiquidV14 10s linear infinite !important;
}
/* A more proportionate two-line editorial heading, without altering its copy. */
.chapter-lead {width:min(1010px,100%) !important; padding-top:104px !important;}
.chapter-lead .chapter-no {
  font-size:clamp(22px,2.35vw,32px) !important;
  font-weight:750 !important;
  letter-spacing:-.025em !important;
  line-height:1.22 !important;
  color:#987247 !important;
}
.chapter-lead h2 {
  font-size:clamp(38px,4.6vw,65px) !important;
  line-height:1.08 !important;
  letter-spacing:-.046em !important;
  margin:12px 0 28px !important;
  max-width:1010px !important;
}
/* Ownership scene: retain V12's long sticky-scrolling canvas and title together. */
#ownershipWineScene {height:285vh !important; min-height:1800px !important;}
#ownershipWineScene .wine-ownership-sticky {
  position:sticky !important; top:0 !important;
  height:100svh !important;
  display:flex !important;
  flex-direction:column !important;
}
#ownershipWineScene .wine-ownership-upper {min-height:142px !important;flex-shrink:0 !important;}
#ownershipWineScene .wine-own-title h3 {font-size:clamp(22px,3vw,39px) !important;}
#valGraphic .factory-topline h3 {
  font-size:clamp(30px,3vw,42px) !important;
  line-height:1.11 !important;
  letter-spacing:-.035em !important;
  text-wrap:balance !important;
  max-width:100% !important;
}
/* VAL: 3 columns on desktop. Factory always in the middle. */
#valGraphic .val-process-stage {
  display:grid !important;
  grid-template-columns:minmax(130px,175px) minmax(0,1fr) minmax(190px,240px) !important;
  grid-template-rows:auto !important;
  column-gap:22px !important;
  align-items:center !important;
  margin-top:28px !important;
  min-height:270px;
}
#valGraphic .process-intake {
  grid-column:1 !important; grid-row:1 !important;
  z-index:5 !important;
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
#valGraphic .factory-center {
  grid-column:2 !important; grid-row:1 !important;
  width:100% !important;
  align-self:center !important;
  justify-self:center !important;
  z-index:2;
}
#valGraphic .factory-center svg{display:block;width:100% !important;height:auto !important;max-width:none !important}
#valGraphic .process-outputs {
  grid-column:3 !important; grid-row:1 !important;
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:20px !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:opacity .48s ease !important;
}
#valGraphic .val-process-stage.running .process-intake {opacity:1 !important;visibility:visible !important}
#valGraphic .val-process-stage.results-visible .process-outputs {opacity:1 !important;visibility:visible !important}
#valGraphic .output-card {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  width:100% !important;
  min-width:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  opacity:0 !important;
  transform:translateY(14px) !important;
  text-align:center;
  transition:opacity .5s ease,transform .5s ease !important;
}
#valGraphic .val-process-stage.results-visible .output-card {opacity:1 !important;transform:none !important}
#valGraphic .output-card svg {width:86px !important;height:64px !important}
#valGraphic .output-copy span {font-size:13px;line-height:1.2}
#valGraphic .output-copy b {font-size:clamp(18px,1.85vw,24px);}
#valGraphic .val-process-stage:before,
#valGraphic .val-process-stage:after {display:none !important}
@media(max-width:790px){
 #container-intro #title-image {width:min(85vw,640px) !important;max-width:min(85vw,640px) !important}
 #container-intro #title-text #title-header h2{font-size:clamp(15px,4vw,32px) !important}
 .chapter-lead{padding-top:80px !important}
 .chapter-lead .chapter-no{font-size:clamp(17px,4vw,22px) !important}
 .chapter-lead h2{font-size:clamp(29px,7.5vw,46px) !important}
 #ownershipWineScene {height:255vh !important;min-height:1500px !important}
 #valGraphic .val-process-stage {grid-template-columns:1fr !important;grid-template-rows:auto auto auto !important;row-gap:8px !important}
 #valGraphic .process-intake{grid-column:1 !important;grid-row:1 !important}
 #valGraphic .factory-center{grid-column:1 !important;grid-row:2 !important}
 #valGraphic .process-outputs{grid-column:1 !important;grid-row:3 !important;flex-direction:row !important;flex-wrap:wrap !important}
 #valGraphic .output-card{width:calc(50% - 10px) !important;min-width:130px !important}
}



/* SPEC: editorial green / oil-gold. Single intentional token layer over the legacy styles. */
:root{
 --paper:#f7f6e9; --paper2:#fcfbf2; --ink:#233a2e; --quiet:#607568;
 --purple:#18583e; --purple2:#528a70; --yellow:#e8b633; --yellow2:#f5d87b;
 --line:#d6e0d2; --sage:#4d9074; --mint:#a3c4ad;
 --special-forest:#174f38; --special-leaf:#358364; --special-gold:#dfae2b;
 --special-olive:#9daa70; --special-cream:#f7f6e9; --special-muted:#718679;
}
html {scroll-behavior:smooth;scroll-padding-top:30px}
body {background:var(--paper)!important;color:var(--ink);text-rendering:optimizeLegibility}
#top-progress {background:linear-gradient(90deg,#1e6549 0%,#6caa77 58%,#efbe45 100%)!important;height:3px}
#container-intro{min-height:100svh!important;margin-bottom:0!important;padding-top:clamp(28px,3.6vh,45px)!important;justify-content:flex-start!important}
.hero.wine-hero{background:var(--paper)!important}
#container-intro #title-image{width:min(665px,57vw)!important;max-width:665px!important;margin-bottom:17px!important;
 border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important}
#container-intro #title-image img{width:100%!important;max-width:100%!important;filter:sepia(.48) saturate(1.85) hue-rotate(77deg) brightness(.84) contrast(1.05)}
#container-intro #title-text{width:100%;margin:8px auto 30px!important}
#container-intro #title-text #title-header{max-width:1600px}
#container-intro #title-text #title-header h2{
 font-family:OfflineSans,Arial,sans-serif!important; font-size:clamp(25px,4.12vw,60px)!important;
 font-weight:850!important; letter-spacing:-.052em!important; color:var(--special-forest)!important;
 width:max-content!important;max-width:none!important;white-space:nowrap!important;
}
#title-text #title-header h2:nth-child(1){color:transparent!important;text-shadow:0 0 2px #bfcfc0!important}
#title-text #title-header h2:nth-child(2){
 background:linear-gradient(95deg,#0d5337 0%,#2d8051 70%,#39714d 100%)!important;
 -webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;
 animation:wineHalfLiquidV14 10s ease-in-out infinite!important;
}
#title-text h3{color:var(--special-forest)!important;font-weight:780}
#title-text h4{color:#628674!important;letter-spacing:.07em;font-size:clamp(13px,1.5vw,18px)!important}
#intro-text{width:min(800px,88vw)!important}
#intro-text p{font-family:Arial,'DejaVu Sans',sans-serif!important;font-size:clamp(16px,1.3vw,19px)!important;
 line-height:1.76!important;color:#425b4d!important;max-width:740px}
.scroll-arrow{color:#547e5f!important;opacity:.9}
/* Keep Wine's split scrollytelling, but remove harsh blocks and visual jitter. */
.opening,.story-steps,.stage{background:var(--paper)!important}
.stage{border-right:1px solid #dbe5d9!important}
.stage-scene{transition:opacity .55s ease,transform .75s cubic-bezier(.22,.7,.2,1)!important}
.step{opacity:.44;transition:opacity .36s ease!important}
.step.active{opacity:1}
.step h2{font-size:clamp(34px,3.7vw,52px)!important;letter-spacing:-.044em!important;line-height:1.12!important;color:var(--special-forest)!important}
.step p,.body-copy p,.chapter p,.graphic p{color:#304b3c;font-family:Arial,'DejaVu Sans',sans-serif}
.step p{font-size:clamp(18px,1.5vw,22px)!important;line-height:1.76!important}
.wine-native-import .wine-import-marker span{color:#20563e!important;font-size:clamp(13px,1.4vw,20px)!important}
.wine-native-import .drawn-arrow{stroke:#fff6d8!important;stroke-width:4.2!important}
.factory-name,.wilmar-name,.wilmar-kpi,.wilmar-kpi b{color:var(--special-forest)!important}
.wine-original-bottle-room{background:transparent}
/* Chapter typography: balanced two-tier headline, wide restraint and clear pacing. */
.chapter,.chapter:nth-of-type(even){background:var(--paper)!important;padding-bottom:88px}
.chapter-lead{width:min(960px,92%)!important;padding:clamp(90px,11vh,135px) 0 22px!important}
.chapter-lead .chapter-no{
 font:750 clamp(22px,2.25vw,31px)/1.28 OfflineSans,Arial,sans-serif!important;
 letter-spacing:-.027em!important;color:#608a66!important;margin:0 0 8px!important;
}
.chapter-lead h2{
 font:760 clamp(36px,4.0vw,61px)/1.09 OfflineSans,Arial,sans-serif!important;
 color:var(--special-forest)!important;letter-spacing:-.048em!important;
 margin:8px 0 22px!important;max-width:960px!important;
}
.body-copy{max-width:730px!important;margin:20px auto 26px!important;color:var(--ink);
 font-size:clamp(18px,1.42vw,21px)!important;line-height:1.79!important}
.body-copy p{margin-bottom:27px}
.data-em{color:#187349!important}
.chapter .reveal{transform:translateY(18px);transition:opacity .62s ease,transform .76s cubic-bezier(.2,.75,.2,1)}
/* Graphics read as carefully placed editorial plates; not UI cards. */
.graphic{width:min(1040px,95%)!important;padding:clamp(24px,3.5vw,45px)!important;
 margin:56px auto 86px!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:8px!important}
.graphic h3{font:760 clamp(25px,2.65vw,38px)/1.19 OfflineSans,Arial,sans-serif!important;
 color:var(--special-forest)!important;letter-spacing:-.04em!important}
.visual-note,.wine-ownership-kicker{color:#789061!important;font-size:11px!important;letter-spacing:.16em!important}
.graphic-caption{font-size:12px!important;color:#748777!important;border-top:1px solid #dce4d5!important}
.small-note,.sources-inline{color:#667f6e!important}
/* White-free Wilmar section: numerical contrast and an editorial illustrated header. */
.editorial-wilmar{background:#eff4e8!important;border:1px solid #d9e6d6!important;
 box-shadow:none!important;border-radius:7px!important}
.editorial-wilmar .wilmar-dek{color:#52725b!important;font-size:16px!important;line-height:1.74}
.metric-grid{gap:14px!important;margin-top:34px!important}
.metric-tile{background:#fbfbf1!important;border:1px solid #dce5d1!important;
 border-radius:8px!important;box-shadow:none!important;min-height:128px!important;
 padding:22px 24px!important;transition:opacity .5s ease,transform .65s ease!important}
.metric-tile b{font-size:clamp(29px,3.6vw,48px)!important;color:var(--special-forest)!important;
 letter-spacing:-.055em}
.metric-tile span{color:#607765!important;font-size:13px!important}
.metric-wrap .graphic-caption{color:#748777!important;border-top-color:#dce5d6!important}
.editorial-wilmar .wilmar-sketch{opacity:.8}
.editorial-palm{background:#f5f6e9!important;border:1px solid #e0e8d8!important;box-shadow:none!important}
.editorial-palm .palm-layout{gap:35px}
.palm-chart{gap:46px!important}
.donut{background:conic-gradient(#1f6449 0% 66%,#e6b832 66% 91%,#83aa82 91% 100%)!important;
 box-shadow:none!important;transform:rotate(-90deg);transition:transform 1s ease!important}
.donut:before{background:#f5f6e9!important}
.donut:after{color:var(--special-forest)!important;font-size:clamp(24px,3vw,37px)!important;transform:rotate(90deg)}
.donut-legend .item{border-bottom-color:#d9e2d3!important;color:#3f634e!important}
.donut-legend .item b{color:var(--special-forest)!important}
.donut-legend .item:nth-child(1) i{background:#1f6449!important}
.donut-legend .item:nth-child(2) i{background:#e6b832!important}
.donut-legend .item:nth-child(3) i{background:#83aa82!important}
/* Ownership Canvas retains fixed picture frame and narrative headline. */
#ownershipWineScene .wine-ownership-sticky{background:var(--paper)!important}
#ownershipWineScene .wine-ownership-upper{max-width:960px}
#ownershipWineScene .wine-own-title h3{color:var(--special-forest)!important;font-size:clamp(25px,3.0vw,40px)!important}
#ownershipWineScene .wine-own-title p{color:#577663!important}
.wine-ownership-legend{color:#466452!important}
.wine-ownership-legend .blue{background:#69a78f!important}
.wine-ownership-legend .gold{background:#e9bf45!important}
.wine-ownership-legend .purple{background:#165c42!important}
.wine-ownership-progress{background:#d3dfcf!important}
.wine-ownership-progress i{background:#2a8055!important}
#wineOwnNote{color:#6b856f!important}
/* VAL: keep left -> center -> right; no cross-axis rearrangement on desktop. */
#valGraphic{background:#f2f4e9!important}
#valGraphic .factory-topline h3{color:var(--special-forest)!important;font-size:clamp(29px,3.1vw,43px)!important}
#valGraphic .play-btn{display:inline-flex;align-items:center;justify-content:center;
 background:var(--special-forest)!important;border:1px solid var(--special-forest)!important;
 color:#f8f9e7!important;border-radius:26px!important;font-weight:760!important;
 padding:12px 21px!important;box-shadow:none!important;cursor:pointer;
 transition:background .25s ease,transform .25s ease}
#valGraphic .play-btn:hover{background:#247e53!important;transform:translateY(-2px)}
#valGraphic .val-process-stage{column-gap:16px!important;margin-top:24px!important}
#valGraphic .process-outputs{gap:18px!important}
#valGraphic .output-copy span{color:#547563!important}
#valGraphic .output-copy b{color:var(--special-forest)!important}
#valGraphic .intake-copy b{color:var(--special-forest)!important}
#valGraphic .val-factory{width:100%!important;max-width:none!important;margin:0!important;}
#valGraphic .factory-center svg .val-sign text{fill:#1c6245!important}
#valGraphic .val-warehouse{filter:none}
#valGraphic .bean-bag{border-color:#50765b!important;background:#f2df9a!important}
#valGraphic .output-card{background:transparent!important;border:0!important;box-shadow:none!important}
/* Chart: editorial ink lines, restrained grid and purposeful selection. */
.chart-box{background:#f0f4e8!important}
.chart-chip{background:#fbfcf2!important;color:#285a3e!important;border:1px solid #c9dcca!important;
 font-size:12px!important;transition:background .23s ease,border-color .23s ease!important}
.chart-chip[aria-pressed="true"]{background:#1a6246!important;border-color:#1a6246!important;color:#fffbed!important}
.chart-chip:hover{border-color:#5b9a77!important}
.chart-info strong{color:var(--special-forest)!important}
.chart-info span{color:#648171!important}
.chart-line{transition:opacity .24s ease,stroke-width .24s ease}
.chart-tooltip{background:#faffef!important;color:#264533!important;border:1px solid #ccdeca!important;
 box-shadow:0 10px 28px rgba(38,74,48,.12)!important}
.retail-row,.retail-head{border-color:#dce5d8!important}
.retail-row .prod{color:#2c513b!important;font-weight:700!important}
.retail-row .bartrack{height:9px!important;background:#e1e9de!important;border-radius:3px!important}
.retail-row .bartrack span{background:#91b4a0!important}
.retail-row .bartrack.new span{background:#e5b637!important}
.retail-delta{color:#1a6b48!important}
.retail-delta.flat{color:#758978!important}
footer{background:#184a36!important;color:#dce8d7!important;font-size:13px!important;letter-spacing:.04em}
/* Keep mobile reading linear and preserve horizontal VAL only where enough width exists. */
@media(max-width:900px){
 #container-intro #title-image{width:min(78vw,580px)!important}
 #container-intro #title-text #title-header h2{font-size:clamp(16px,4.1vw,35px)!important}
 #intro-text{width:90%!important}
 #intro-text p{font-size:16px!important;line-height:1.62!important}
 .chapter-lead{padding-top:86px!important}
 .chapter-lead .chapter-no{font-size:clamp(20px,3.6vw,26px)!important}
 .chapter-lead h2{font-size:clamp(33px,6.1vw,49px)!important}
 .graphic{width:97%!important;padding:22px!important;margin:45px auto 70px!important}
 .body-copy{width:min(90%,730px)!important}
 .metric-tile{padding:18px!important}
 .stage{border-right:none!important}
}
@media(max-width:600px){
 #container-intro #title-image{width:83vw!important}
 #container-intro #title-text #title-header h2{font-size:clamp(14px,3.83vw,23px)!important}
 #container-intro #title-text h3{font-size:clamp(24px,6.7vw,34px)!important}
 .chapter-lead .chapter-no{font-size:19px!important}
 .chapter-lead h2{font-size:clamp(32px,8vw,43px)!important}
 .body-copy{font-size:18px!important;line-height:1.72!important}
 .step{opacity:1}
 .step p{font-size:18px!important}
 .metric-grid{grid-template-columns:1fr 1fr;gap:9px!important}
 .metric-tile b{font-size:clamp(24px,6vw,34px)!important}
 .metric-tile span{font-size:12px!important}
 .palm-chart{gap:16px!important}
 .donut{width:min(250px,65vw)!important;height:min(250px,65vw)!important}
 #valGraphic .output-card{flex:1 1 45%;max-width:48%!important}
 #valGraphic .play-btn{font-size:12px!important;padding:12px 16px!important}
 .wine-ownership-legend{gap:9px!important;font-size:10px!important}
}
@media(prefers-reduced-motion:reduce){
 #title-text #title-header h2:nth-child(2){animation:none!important;clip-path:inset(45% 0 0 0)!important}
 .chapter .reveal,.metric-tile{opacity:1!important;transform:none!important}
 .stage-scene,.conveyor-bottle{transition:none!important;animation:none!important}
}

/* QA adjustments: preserve the half-filled Wine headline and readable metric cards. */
#container-intro #title-text #title-header h2:nth-child(1){color:#bad0bb!important;text-shadow:none!important;opacity:1!important}
#container-intro #title-text #title-header h2:nth-child(2){background:linear-gradient(95deg,#15573d,#2c8051)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;animation:wineHalfLiquidV14 10s ease-in-out infinite!important}
#container-intro #title-image img{filter:brightness(0) saturate(100%) invert(28%) sepia(24%) saturate(1131%) hue-rotate(97deg) brightness(88%) contrast(95%)!important}
.metric-tile,.metric-wrap.visible .metric-tile{opacity:1!important;transform:none!important}
#valGraphic .factory-center .val-factory{background:transparent!important}

/* Publication QA: chart color key and filters use the same semantic colors as the data. */
.chart-legend span:nth-child(1) i{background:#d39f22!important}
.chart-legend span:nth-child(2) i{background:#1b7351!important}
.chart-legend span:nth-child(3) i{background:#6aa794!important}
.filter-chip{border:1px solid #c9dcca!important;background:#fbfcf2!important;color:#285a3e!important;
 transition:background .24s ease,border-color .24s ease!important}
.filter-chip[aria-pressed="true"]{background:#1a6246!important;color:#fffbed!important;border-color:#1a6246!important}
.filter-chip:hover{border-color:#64a27c!important}
.retail-note{color:#718775!important;font-size:12px!important;line-height:1.7!important}

/* ==== V18 editorial refinements ==== */
:root{--display:"Fester","Cooper Black","Arial Black",OfflineSans,Arial,sans-serif;--inter:OfflineSans,Arial,sans-serif;}
.chapter{padding:0 20px 56px!important}
.chapter-lead{width:min(980px,100%)!important;margin:auto!important;padding:70px 0 6px!important}
.chapter-no{font-family:var(--inter)!important;font-size:clamp(22px,2.4vw,34px)!important;line-height:1.18!important;letter-spacing:.01em!important;font-weight:700!important;color:#6d845f!important;text-transform:none!important}
.chapter-lead h2{font-family:var(--display)!important;font-size:clamp(54px,6.4vw,88px)!important;line-height:.96!important;letter-spacing:-.045em!important;color:#135e42!important;max-width:980px!important;margin:8px 0 16px!important;text-wrap:balance}
#so-huu .body-copy:first-of-type,#wilmar .body-copy:first-of-type,#gia-dau .body-copy:first-of-type{margin-top:14px!important}
#so-huu .graphic:first-of-type,#wilmar .graphic:first-of-type,#gia-dau .graphic:first-of-type{margin-top:28px!important}
.graphic{margin:42px auto 72px!important}
#so-huu .chapter-lead h2{max-width:860px!important}
#so-huu .chapter-no{max-width:620px}
#ownTitleA h3,#ownTitleB h3,#ownTitleC h3{font-family:var(--display)!important;color:#135e42!important}
#wineOwnPercent{display:none!important}
.wine-ownership-upper{padding-bottom:6px!important}
.wine-own-title p,#wineOwnNote,.wine-ownership-kicker{font-family:var(--inter)!important}
/* Wilmar KPI and palm sections */
.editorial-wilmar,.editorial-palm,.calofic-finance-graphic{background:#f8f1e4!important;border:2px solid #7c9a87!important;box-shadow:8px 10px 0 #e6dbc7!important}
.wilmar-editorial-head{display:block!important}
.wilmar-sketch{display:none!important}
.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.metric-tile{background:#fffaf0!important;border:2px solid #7c9a87!important;border-radius:24px 20px 28px 18px / 20px 24px 20px 24px!important;box-shadow:5px 6px 0 #eadfcf!important;padding:28px 28px 24px!important;min-height:160px;display:flex;flex-direction:column;justify-content:flex-end}
.metric-tile b{font-family:var(--display)!important;font-size:clamp(48px,4.6vw,66px)!important;color:#135e42!important;line-height:1}
.metric-tile span{font-family:var(--inter)!important;font-size:17px!important;color:#47685d!important;font-weight:700!important}
.wilmar-dek{font-family:var(--serif)!important;font-size:18px!important;color:#566158!important;max-width:760px}
.editorial-palm h3,.editorial-wilmar h3,.calofic-finance-graphic h3{font-family:var(--display)!important;color:#135e42!important}
.palm-layout{display:grid!important;grid-template-columns:minmax(170px,240px) minmax(0,1fr)!important;gap:34px!important;align-items:center!important}
.palm-illus{max-width:230px}
.palm-sketch{width:100%;height:auto;overflow:visible}
.palm-note{font-family:var(--serif)!important;font-size:15px!important;line-height:1.6!important;color:#5d584f!important;margin-top:10px}
.palm-chart{display:flex;align-items:center;gap:34px;flex-wrap:wrap}
.donut{background:conic-gradient(#1b7351 0 66%,#e3b833 66% 91%,#87a77f 91% 100%)!important;filter:drop-shadow(5px 7px 0 #e7ddc8);border-radius:50%;position:relative}
.donut:before{background:#f8f1e4!important;inset:32%!important}
.donut:after{content:none!important}
.donut-legend .item{font-family:var(--inter)!important}
.donut-legend .item b{font-family:var(--display)!important;color:#135e42!important}
.donut-legend .legend-dot{width:15px;height:15px}
/* Finance chart */
.finance-legend{display:flex;gap:20px;flex-wrap:wrap;margin:8px 0 14px;font:700 12px/1.4 var(--inter);color:#5c564c}
.finance-legend span{display:flex;align-items:center;gap:8px}
.finance-legend i{display:inline-block;width:14px;height:14px;border-radius:4px}
.finance-legend i.rev{background:#1b7351}.finance-legend i.pat{background:#e3b833}
#caloficFinanceChart{width:100%;height:auto;display:block;overflow:visible}
/* VAL refinements */
#valGraphic .factory-topline{align-items:flex-end!important}
#valGraphic .small-note{display:none!important}
#valGraphic .val-process-stage{grid-template-columns:minmax(150px,190px) 1fr minmax(230px,280px)!important;align-items:center!important;column-gap:20px!important;margin-top:20px!important}
#valGraphic .process-intake{justify-self:start!important}
#valGraphic .factory-center{justify-self:center!important}
#valGraphic .process-outputs{display:flex!important;flex-direction:column!important;gap:20px!important;justify-self:start!important;opacity:0;visibility:hidden}
#valGraphic .val-process-stage.running .process-intake{opacity:1!important;visibility:visible!important}
#valGraphic .val-process-stage.results-visible .process-outputs{opacity:1!important;visibility:visible!important}
#valGraphic .output-card{background:none!important;border:none!important;box-shadow:none!important;padding:0!important;opacity:0;transform:translateY(12px);display:flex!important;align-items:center!important;gap:14px!important}
#valGraphic .output-card svg{width:88px;height:72px;flex:0 0 auto}
#valGraphic .output-copy{display:flex;flex-direction:column;gap:3px}
#valGraphic .output-copy span{font:700 12px/1.3 var(--inter);color:#4b5f55;text-transform:uppercase;letter-spacing:.06em}
#valGraphic .output-copy b{font-family:var(--display)!important;font-size:28px!important;color:#135e42!important;white-space:nowrap}
#valGraphic .val-process-stage.results-visible .output-card{opacity:1!important;transform:none!important}
#valGraphic .val-process-stage.running .meal{transition-delay:1.0s!important}#valGraphic .val-process-stage.running .oil{transition-delay:1.25s!important}
#valGraphic .meal{transition:opacity .45s ease,transform .45s ease}.oil{transition:opacity .45s ease,transform .45s ease}
#valGraphic .flow-callout{display:none!important}
#valGraphic .val-process-stage:before,#valGraphic .val-process-stage:after{content:''!important;display:block!important;position:absolute!important;top:50%!important;height:2px!important;background:linear-gradient(90deg,#d4c6ae,#bea98e)!important;z-index:1!important}
#valGraphic .val-process-stage:before{left:140px!important;width:calc(50% - 205px)!important}
#valGraphic .val-process-stage:after{right:240px!important;width:calc(50% - 150px)!important}
#valGraphic .output-card .output-copy b{line-height:1.02}
@media(max-width:980px){.metric-grid{grid-template-columns:1fr 1fr}.chapter-lead h2{font-size:clamp(52px,8.4vw,80px)!important}}
@media(max-width:760px){.chapter-lead{padding:56px 0 4px!important}.chapter-no{font-size:22px!important}.chapter-lead h2{font-size:clamp(40px,13vw,64px)!important}.metric-grid{grid-template-columns:1fr!important}.palm-layout{grid-template-columns:1fr!important}.palm-chart{justify-content:center}.palm-illus{margin:0 auto}.donut{margin:auto}#valGraphic .val-process-stage{grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;row-gap:14px!important}#valGraphic .val-process-stage:before,#valGraphic .val-process-stage:after{display:none!important}#valGraphic .process-intake,#valGraphic .factory-center,#valGraphic .process-outputs{justify-self:center!important;width:100%!important}#valGraphic .process-outputs{align-items:center!important}#valGraphic .output-card{justify-content:center!important;text-align:center!important}.calofic-finance-graphic{padding:24px!important}}



/* Chapter title: option B, preserve expressive Fester but restore hierarchy and white space. */
:root{--chapter-small:"Inter",OfflineSans,Arial,Helvetica,sans-serif;--chapter-display:"Fester","Cooper Black","Arial Black",OfflineSans,Arial,sans-serif}
.chapter-lead{width:min(950px,100%)!important;padding:clamp(78px,9vw,120px) 0 18px!important}
.chapter-no{font:600 clamp(19px,1.85vw,24px)/1.33 var(--chapter-small)!important;letter-spacing:0!important;color:#6b875f!important;max-width:780px!important}
.chapter-lead h2{font-family:var(--chapter-display)!important;font-size:clamp(38px,4.9vw,66px)!important;line-height:1.075!important;font-weight:700!important;letter-spacing:-.025em!important;color:#145e42!important;max-width:940px!important;margin:18px 0 24px!important;text-wrap:balance}
#so-huu .chapter-lead h2{max-width:890px!important}
/* Fully self-contained, true-proportional interactive finance graphic */
.calofic-finance-graphic{padding:clamp(22px,3vw,46px)!important;overflow:visible!important;background:#f7f1e5!important}
.calofic-finance-graphic h3{font-family:var(--chapter-small)!important;font-size:clamp(23px,2.75vw,37px)!important;line-height:1.18!important;letter-spacing:-.035em!important;font-weight:800!important;max-width:850px!important;color:#145e42!important}
.finance-intro{color:#66776a;font:500 14px/1.5 var(--chapter-small);margin:0 0 14px}
.finance-toolbar{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0 8px}
.finance-chip{font:700 13px/1.1 var(--chapter-small);border:1px solid #abc5ad;border-radius:50px;background:#fffaf0;color:#2c6650;padding:10px 15px;cursor:pointer;transition:background-color .18s,color .18s,border-color .18s,transform .18s}
.finance-chip[aria-pressed="true"]{background:#186347;color:#fffaf1;border-color:#186347}
.finance-chip:hover{transform:translateY(-1px);border-color:#186347}
.finance-chip:focus-visible{outline:3px solid #e4b832;outline-offset:3px}
.finance-selected{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin:18px 0 6px}
.finance-selected strong{font:800 clamp(27px,3.4vw,42px)/1.12 var(--chapter-small);color:#145e42;letter-spacing:-.035em}
.finance-selected span{font:600 13px/1.4 var(--chapter-small);color:#637468}
.finance-chart-window{width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-color:#b2bea6 transparent}
.finance-chart-inner{position:relative;width:100%;min-width:690px}
.finance-chart-svg{display:block;width:100%;height:auto;overflow:visible}
.finance-axis-label{font:500 15px var(--chapter-small);fill:#697769}
.finance-axis-caption{font:700 15px var(--chapter-small);fill:#5b7864}
.finance-year-label{font:600 16px var(--chapter-small);fill:#5e6259}
.finance-bar{transform-box:fill-box;transform-origin:center bottom;transform:scaleY(.02);opacity:.97;transition:transform .85s cubic-bezier(.19,.78,.25,1),opacity .26s}
.calofic-finance-graphic.visible .finance-bar{transform:scaleY(1)}
.finance-bar.dim{opacity:.19!important}
.finance-bar.revenue{fill:#1c7753}
.finance-bar.profit{fill:#e4b832}
.finance-bar:hover{filter:brightness(1.1)}
.finance-guide{stroke:#d3ddcd;stroke-width:1;stroke-dasharray:4 7}
.finance-hit{fill:transparent;cursor:crosshair}
.finance-pointer-line{stroke:#789984;stroke-width:1.4;stroke-dasharray:4 5;pointer-events:none}
.finance-legend{margin:12px 0!important;gap:20px!important;font-family:var(--chapter-small)!important;color:#597063!important}
.finance-legend .rev{background:#1c7753!important}.finance-legend .pat{background:#e4b832!important}
.finance-tooltip{position:absolute;z-index:4;left:0;top:0;min-width:190px;padding:12px 15px;border:1px solid #a8c1aa;background:#fffdf5f7;border-radius:10px;box-shadow:0 8px 24px #154d3325;color:#284d3a;font:600 13px/1.8 var(--chapter-small);pointer-events:none;opacity:0;transform:translate(-50%,-110%) translateY(5px);transition:opacity .12s,transform .12s}
.finance-tooltip.visible{opacity:1;transform:translate(-50%,-110%) translateY(0)}
.finance-tooltip strong{font-weight:800;color:#123e2f}
.finance-chart-note{margin:8px 0 0;font:500 12px/1.6 var(--chapter-small);color:#62756b}
footer{display:block!important;background:#f2f3e7!important;color:#17583e!important;border-top:1px solid #c8d9c4;padding:52px 18px 62px;text-align:center;font:700 14px/1.5 var(--chapter-small)!important;letter-spacing:.08em}
@media(max-width:760px){.chapter-lead{padding:70px 0 12px!important}.chapter-no{font-size:19px!important}.chapter-lead h2{font-size:clamp(36px,9.8vw,52px)!important;line-height:1.09!important;margin-top:13px!important}.finance-chart-inner{min-width:690px}.finance-chart-note{font-size:12px}.finance-selected span{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.finance-bar{transition:none!important;transform:none!important}.finance-chip{transition:none!important}}



/* CALOFIC financial chart: one value per individual bar, controlled visual hierarchy */
.finance-hit-bar{cursor:crosshair;pointer-events:all;outline:none}
.finance-hit-bar:focus-visible{stroke:#e4b832;stroke-width:2px}
.finance-tooltip{min-width:0!important;width:max-content!important;max-width:225px!important;line-height:1.45!important;padding:9px 12px!important;white-space:normal!important;overflow-wrap:break-word!important;text-align:left!important}
.finance-tooltip.visible{opacity:1!important}
.finance-selected span{font-weight:500!important;line-height:1.55!important;white-space:normal!important}
.finance-legend{margin-top:6px!important}
/* Wilmar: return to fine lines and editorial typography, no chunky display font/cards */
.editorial-wilmar,.editorial-palm{background:#f7f6ec!important;border:1px solid #d7e2d2!important;border-radius:12px!important;box-shadow:none!important;padding:clamp(22px,3.4vw,44px)!important;overflow:hidden!important}
.editorial-wilmar h3,.editorial-palm h3{font-family:OfflineSans,Arial,sans-serif!important;font-weight:700!important;letter-spacing:-.045em!important;font-size:clamp(28px,3.15vw,43px)!important;line-height:1.12!important}
.editorial-wilmar .visual-note,.editorial-palm .visual-note{font-size:11px!important;letter-spacing:.12em!important;font-family:OfflineSans,Arial,sans-serif!important}
.metric-grid{gap:12px!important;margin-top:26px!important}
.metric-tile{border:1px solid #d2dfcf!important;border-radius:9px!important;background:#fffaf0!important;box-shadow:none!important;padding:20px 22px 19px!important;min-height:132px!important;justify-content:center!important;transform:none!important}
.metric-tile b{font-family:OfflineSans,Arial,sans-serif!important;font-size:clamp(32px,3.6vw,49px)!important;font-weight:700!important;letter-spacing:-.05em!important;line-height:1.14!important}
.metric-tile span{font-family:OfflineSans,Arial,sans-serif!important;font-size:13px!important;line-height:1.4!important;font-weight:500!important;letter-spacing:0!important}
.metric-wrap.visible .metric-tile:nth-child(odd),.metric-wrap.visible .metric-tile:nth-child(even){transform:none!important}
.metric-wrap .graphic-caption{font-family:OfflineSans,Arial,sans-serif!important;font-size:11px!important;color:#778578!important}
.wilmar-dek{font-size:17px!important;line-height:1.62!important}
/* Palm illustration + true-proportional hand-inked pie */
.editorial-palm .palm-layout.palm-composition-v20{display:grid!important;grid-template-columns: minmax(190px,265px) minmax(0,1fr)!important;gap:26px!important;align-items:center!important;width:100%!important;min-height:0!important}
.editorial-palm .palm-illus{display:flex!important;opacity:1!important;visibility:visible!important;grid-column:auto!important;grid-row:auto!important;width:100%!important;max-width:265px!important;height:auto!important;flex-direction:column!important;align-items:center!important}
.editorial-palm .palm-tree-v20{display:block!important;width:100%!important;height:auto!important;max-width:265px!important;overflow:visible!important}
.editorial-palm .palm-chart{display:grid!important;grid-template-columns:minmax(215px,320px) minmax(155px,1fr)!important;gap:18px!important;justify-items:center!important;align-items:center!important;width:100%!important;min-height:0!important;margin:0!important}
.editorial-palm .palm-pie-area{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:320px!important;min-width:0!important}
.editorial-palm .palm-pie-svg{display:block!important;width:100%!important;height:auto!important;max-width:320px!important;aspect-ratio:356/340!important;filter:none!important;overflow:visible!important}
.editorial-palm .donut-legend{min-width:0!important;width:100%!important;max-width:240px!important;justify-self:stretch!important}
.editorial-palm .donut-legend .item{font:500 13px/1.3 OfflineSans,Arial,sans-serif!important;padding:14px 2px!important;color:#516559!important;border-bottom:1px solid #d8e0d2!important}
.editorial-palm .donut-legend .item b{font:700 21px/1 OfflineSans,Arial,sans-serif!important;color:#1e6449!important}
.editorial-palm .donut-legend .item span{white-space:nowrap!important}
@media(max-width:900px){.editorial-palm .palm-layout.palm-composition-v20{grid-template-columns:200px minmax(0,1fr)!important;gap:14px!important}.editorial-palm .palm-chart{grid-template-columns:1fr!important;gap:4px!important}.editorial-palm .donut-legend{max-width:330px!important}}
@media(max-width:680px){.editorial-palm .palm-layout.palm-composition-v20{grid-template-columns:1fr!important;gap:10px!important;justify-items:center!important}.editorial-palm .palm-illus{max-width:180px!important}.editorial-palm .palm-chart{grid-template-columns:1fr!important}.editorial-palm .palm-pie-area{max-width:260px!important}.editorial-palm .donut-legend{max-width:300px!important}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.metric-tile{min-height:122px!important;padding:12px 10px!important}.metric-tile b{font-size:clamp(25px,6.1vw,38px)!important}.metric-tile span{font-size:11px!important}}
@media(prefers-reduced-motion:reduce){.finance-bar{transition:none!important}}

/* Maintain the headline and bottle composition in one complete pinned scene.
   The third (100% Wilmar) state settles BEFORE the sticky composition is released. */
#ownershipWineScene{height:460svh!important;min-height:0!important;overflow:clip!important}
#ownershipWineScene .wine-ownership-sticky{position:sticky!important;top:0!important;height:100svh!important;transform:none!important}
#ownershipWineScene .wine-ownership-upper{transform:none!important}
@media(max-width:760px){#ownershipWineScene{height:460svh!important;min-height:0!important}}



/* V21: Wilmar intro paragraph set in Inter with system fallback; no layout or animation changes. */
.wilmar-dek { font-family: "Inter", Arial, Helvetica, sans-serif !important; }
