:root{--navy:#082744;--green:#075336;--gold:#c58b17;--ink:#101f2a;--light:#f4f5f2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}button{font:inherit}h1,h2,h3,p{margin-top:0}.container{max-width:1190px;margin:auto;padding-left:24px;padding-right:24px}.site-header{background:#fff;box-shadow:0 2px 10px #00000014;position:relative;z-index:4}.nav-wrap{max-width:1250px;min-height:94px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:10px 23px;gap:25px}.identity{display:flex;align-items:center;gap:10px;flex-shrink:0}.identity img{width:105px;height:79px;object-fit:contain}.brand-name{font:25px/1.03 Georgia,serif;color:var(--navy);letter-spacing:-.6px}.site-nav{display:flex;align-items:center;gap:25px;font-size:16px}.site-nav a{white-space:nowrap}.site-nav a:hover,.site-nav a:focus-visible{color:#b87b0d}.site-nav a.current{border-bottom:2px solid var(--gold);padding-bottom:10px}.nav-dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;box-shadow:0 7px 20px #0002;border-radius:4px;padding:10px;z-index:9}.nav-dropdown:focus-within .dropdown-menu,.nav-dropdown:hover .dropdown-menu{display:grid;gap:8px}.dropdown-menu a{padding:8px}.btn{display:inline-flex;justify-content:center;align-items:center;text-align:center;gap:9px;padding:13px 20px;border-radius:6px;font-weight:600;font-size:16px;transition:filter .2s;background:var(--gold);color:white;border:1px solid var(--gold);min-height:43px}.btn:hover{filter:brightness(.91)}.btn.outline{background:#1118;border-color:#fff}.btn.green{background:var(--green);border-color:var(--green)}.mobile-toggle{display:none;background:#fff;border:1px solid #bbb;border-radius:5px;padding:8px 12px}.hero{min-height:394px;display:flex;align-items:center;position:relative;color:white;background:#152a24 url('assets/hero.jpg') center 43%/cover no-repeat}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,14,13,.86),rgba(4,20,17,.70) 39%,rgba(4,16,11,.1) 95%)}.hero-content{position:relative;z-index:1;width:100%;padding-top:35px;padding-bottom:37px}.hero h1{font:normal clamp(43px,5.5vw,70px)/.98 Georgia,serif;letter-spacing:-1px;margin-bottom:18px;max-width:620px}.hero p{font:23px/1.25 Georgia,serif;max-width:650px;margin-bottom:23px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.benefits{display:grid;grid-template-columns:repeat(4,1fr);background:#f9faf8;padding:24px 0 25px}.benefit{padding:0 20px;text-align:center;border-right:1px solid #d4d8d5}.benefit:last-child{border:0}.benefit svg{height:45px;width:45px;stroke:var(--green);fill:none;stroke-width:1.7;margin-bottom:5px}.benefit b{display:block;font-size:16px;letter-spacing:.5px}.benefit p{font-size:16px;line-height:1.25;margin:5px 0 0}.commodities{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.commodity{min-height:315px;position:relative;display:flex;flex-direction:column;justify-content:end;padding:24px;color:white;background-size:cover;background-position:center}.commodity:before{content:'';inset:0;position:absolute;background:linear-gradient(0deg,#050a09db,transparent 80%)}.commodity>*{position:relative}.commodity h2{font:normal 33px/1 Georgia,serif;margin:0 0 10px}.commodity p{font-size:17px;line-height:1.25;max-width:340px;margin:0 0 15px}.commodity .btn{align-self:flex-start}.commitment{display:grid;grid-template-columns:1fr 1fr;min-height:280px}.commitment-photo{background:url('assets/landscape.jpg') center/cover no-repeat}.commitment-copy{padding:38px clamp(26px,5vw,76px);background:#f7f7f3}.eyebrow{font-size:16px;letter-spacing:1px;color:var(--green);font-weight:700}.commitment h2{font:normal 39px/1.06 Georgia,serif;color:var(--navy);margin:8px 0 16px}.commitment p{font-size:16px;line-height:1.5}.journey{background:var(--navy);color:#fff;text-align:center;padding:30px 20px 44px}.journey .eyebrow{color:#efb82e}.journey h2{font:normal 38px Georgia,serif;margin:5px 0 7px}.journey>p{margin-bottom:28px}.steps{display:flex;max-width:1100px;margin:auto;justify-content:space-between;gap:10px;align-items:start}.step{flex:1}.step-icon{border-radius:50%;background:#fff;color:var(--green);width:72px;height:72px;display:grid;place-items:center;font-size:34px;margin:auto auto 15px}.step b{display:block;font-size:16px;margin-bottom:8px}.step span{font-size:16px;line-height:1.25;display:block}.arrow{font-size:34px;align-self:center;margin-bottom:55px}.footer{padding:20px;text-align:center;background:#061d32;color:#fff;font-size:16px}.interim{max-width:830px;margin:65px auto;padding:30px}.interim h1{font:45px Georgia,serif;color:var(--navy)}.interim p{line-height:1.6}.interim-note{padding:16px;background:#f1f4f4;border-left:3px solid var(--gold)}@media(max-width:970px){.brand-name{font-size:19px}.identity img{width:75px}.site-nav{gap:16px;font-size:16px}.nav-wrap{gap:8px}}@media(max-width:730px){.nav-wrap{min-height:75px}.mobile-toggle{display:block}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;background:#fff;padding:15px 22px;box-shadow:0 6px 12px #0002;font-size:16px}.site-nav.open{display:flex}.site-nav a.current{padding:9px 0}.dropdown-menu{position:static;box-shadow:none;display:grid}.hero{min-height:460px}.hero h1{font-size:46px}.hero p{font-size:19px}.benefits{grid-template-columns:repeat(2,1fr);row-gap:25px}.benefit:nth-child(2){border:0}.commodities{grid-template-columns:1fr}.commodity{min-height:335px}.commitment{grid-template-columns:1fr}.commitment-photo{min-height:245px}.steps{flex-wrap:wrap;justify-content:center}.step{flex:1 1 35%;min-width:125px}.arrow{display:none}}@media(max-width:430px){.brand-name{font-size:16px}.identity img{width:61px;height:60px}.hero h1{font-size:40px}.hero-actions .btn{width:100%}.benefit{padding:0 7px}.benefit b{font-size:16px}.benefit p{font-size:16px}.journey h2{font-size:30px}}

/* v2: vertical responsive page flow and horizontal-overflow protection */
html{width:100%;overflow-x:clip}body{width:100%;min-width:0;overflow-x:clip}
img,svg,video,iframe{max-width:100%}img{height:auto}
.container,.nav-wrap,.site-header,.hero,.benefits,.commodities,.commitment,.journey,.footer{min-width:0;max-width:100%}
.commodity,.commitment-copy,.benefit,.step{min-width:0;overflow-wrap:anywhere}
.hero h1,.hero p,.commodity h2,.commodity p,.commitment h2{overflow-wrap:break-word}
@media(max-width:730px){
 .nav-wrap{padding:9px 16px;gap:8px}
 .identity{min-width:0;flex:1}
 .brand-name{overflow-wrap:normal}
 .site-nav{max-width:100vw;max-height:75vh;overflow-y:auto}
 .hero{background-position:58% center}
 .hero-content{padding-left:20px;padding-right:20px}
 .hero h1{font-size:clamp(35px,9vw,46px)}
 .journey{padding-left:16px;padding-right:13px}
 .step{flex-basis:42%}
}
@media(max-width:360px){
 .brand-name{font-size:16px}
 .identity img{width:52px;height:54px}
 .benefits{grid-template-columns:1fr}
 .benefit{border-right:0;border-bottom:1px solid #d4d8d5;padding-bottom:15px}
 .hero h1{font-size:34px}
 .step{flex-basis:100%}
}

/* Approved v3: rebuild from clean image areas, never screenshot text crops */
.hero{background-image:linear-gradient(90deg,#0e2218 0%,#14291b 37%,transparent 75%),url('assets/hero-clean.jpg');background-color:#14291b;background-repeat:no-repeat;background-size:cover,auto 100%;background-position:center,right center;min-height:388px}
.hero:before{background:linear-gradient(90deg,rgba(3,15,11,.55) 0%,rgba(3,15,11,.46) 37%,transparent 75%)}
.commodity{background-position:center top;background-repeat:no-repeat;background-size:cover;min-height:317px}
.commodity:before{background:linear-gradient(0deg,rgba(7,12,10,.97),rgba(7,12,10,.65) 46%,rgba(7,12,10,.05) 100%)}
.commitment-photo{background-image:url('assets/landscape-clean.jpg')}
.ship-icon{width:42px;height:42px;display:block;color:#053c31}
.step-icon svg.ship-icon{max-width:42px}
@media(max-width:730px){.hero{background-size:cover,auto 100%;background-position:center,65% center}.hero:before{background:linear-gradient(90deg,#071812e8 0%,#071812b3 65%,#07181244 100%)}}

/* Homepage v4: approved Ivorian-inspired landscape with cocoa, coffee and cashews */
.hero{background-image:url('assets/hero-approved-v4.jpg');background-size:cover;background-position:center center;min-height:405px}
.hero:before{background:linear-gradient(90deg,rgba(0,15,12,.78) 0%,rgba(0,19,13,.63) 33%,rgba(0,19,13,.05) 70%)}
.commitment-photo{background-image:url('assets/landscape-clean.jpg')}
@media(max-width:730px){.hero{background-position:65% center;min-height:480px}.hero:before{background:linear-gradient(90deg,rgba(1,17,15,.87),rgba(1,17,15,.74) 57%,rgba(1,17,15,.35))}}

/* v5: approved layout, location-grounded village imagery; images always cropped proportionally */
.hero{background-image:url('assets/hero-village-composite.jpg');background-size:cover;background-repeat:no-repeat;background-position:center center;min-height:405px}
.hero::before{background:linear-gradient(90deg,rgba(0,15,12,.86) 0%,rgba(0,19,13,.70) 34%,rgba(0,19,13,.18) 61%,rgba(0,0,0,.02) 85%)}
.commitment-photo{background-image:url('assets/community-real-village.jpg');background-size:cover;background-position:center 53%;background-repeat:no-repeat}
/* Short, well-balanced sourcing strip */
.journey{padding:22px 20px 27px}
.journey h2{font-size:34px;margin:4px 0 5px}
.journey>p{margin-bottom:17px}
.step-icon{height:58px;width:58px;font-size:27px;margin-bottom:8px}
.step-icon svg.ship-icon{width:37px;height:37px}
.step b{margin-bottom:5px}
.arrow{font-size:27px;margin-bottom:40px}
/* explicit sizing and no sideways scrolling */
html,body{width:100%;overflow-x:clip}
.hero,.commitment,.commodities,.steps{max-width:100%;min-width:0}
@media(max-width:730px){
.hero{background-position:61% center;min-height:475px}
.hero::before{background:linear-gradient(90deg,rgba(0,15,12,.90),rgba(0,15,12,.66) 65%,rgba(0,15,12,.24))}
.journey{padding:24px 13px 28px}
.journey h2{font-size:clamp(27px,7vw,34px)}
.step{min-width:0}
}

/* v6: blend the right side of the genuine village photograph into the light copy panel. */
.commitment-photo{position:relative;isolation:isolate}
.commitment-photo::after{content:"";pointer-events:none;position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,transparent 61%,rgba(247,247,243,.18) 74%,rgba(247,247,243,.75) 92%,#f7f7f3 100%)}
@media(max-width:730px){
  .commitment-photo::after{background:linear-gradient(180deg,transparent 62%,rgba(247,247,243,.27) 78%,#f7f7f3 100%)}
}


/* Our Commodities landing page – scoped to this page, leaving approved homepage untouched */
.catalog-page {color:#092640;background:#fff}
.catalog-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.catalog-hero{min-height:280px;position:relative;display:flex;align-items:center;color:#fff;background:#102d23 url('assets/hero-village-composite.jpg') center 47%/cover no-repeat;isolation:isolate}
.catalog-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,20,15,.91),rgba(2,22,17,.83) 40%,rgba(2,22,17,.23) 72%,transparent);z-index:-1}
.catalog-hero .catalog-shell{padding-block:30px}
.catalog-hero h1{font:normal clamp(46px,5.4vw,67px)/.98 Georgia,serif;margin:0 0 8px}
.catalog-hero h2{font:normal clamp(21px,2.4vw,30px)/1.12 Georgia,serif;max-width:610px;margin:0 0 10px;color:white}
.catalog-hero p{font-size:16px;line-height:1.42;max-width:605px;margin:0}
.catalog-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:12px max(26px,calc((100vw - 1180px)/2)) 16px;background:#fafbf8}
.catalog-benefits .benefit{padding:0 12px}
.catalog-benefits .benefit svg{width:39px;height:39px}
.catalog-benefits .benefit p{font-size:16px}
.catalog-benefits .benefit b{font-size:16px}
.catalog-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:18px 0 16px}
.catalog-card{border-radius:3px;overflow:hidden;background:#fff;box-shadow:0 3px 18px #112a3014;display:flex;flex-direction:column;min-width:0}
.catalog-card>img{display:block;width:100%;height:155px;object-fit:cover;object-position:center}
.catalog-card-body{padding:12px 18px 16px;display:flex;flex-direction:column;flex:1}
.catalog-card h3{font:normal clamp(25px,2.5vw,32px)/1 Georgia,serif;color:#092742;margin:0 0 7px}
.catalog-card .summary{font-size:16px;line-height:1.3;margin:0 0 16px;color:#183753}
.catalog-facts{padding:0;margin:0 0 16px;list-style:none;display:grid;gap:10px;flex:1}
.catalog-facts li{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start;color:#1c3a56;font-size:16px;line-height:1.24}
.catalog-facts .fact-icon{color:#b77d10;font-size:20px;line-height:1;font-weight:bold;text-align:center}
.catalog-facts li:nth-child(3) .fact-icon{color:#05643f}
.catalog-card .btn{display:flex;width:100%;font-size:16px;margin-top:auto;padding:10px}
.catalog-difference{background:#eaf4f9;padding:20px 0 23px}
.catalog-difference-inner{display:grid;grid-template-columns:1fr 1.28fr;gap:30px;align-items:center}
.catalog-difference .eyebrow{font-size:16px}
.catalog-difference h2{font:normal clamp(28px,2.9vw,38px)/1 Georgia,serif;color:#082b4b;margin:4px 0 7px}
.catalog-difference p{font-size:16px;line-height:1.36;margin:0;color:#203a53}
.catalog-chain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;text-align:center;position:relative;align-items:start}
.catalog-chain-step{position:relative;min-width:0}
.catalog-chain-step:not(:last-child):after{content:"→";position:absolute;top:16px;right:-16px;font-size:25px;color:#133350}
.catalog-chain-icon{width:57px;height:57px;display:grid;place-items:center;background:#fff;color:#075336;border-radius:50%;margin:0 auto 8px}
.catalog-chain-icon svg{width:34px;height:34px;stroke:currentColor;fill:none;stroke-width:1.8}
.catalog-chain-step b{display:block;font-size:16px;letter-spacing:.6px}
.catalog-chain-step span{display:block;font-size:16px;line-height:1.26;margin-top:3px}
.catalog-cta{background:linear-gradient(90deg,rgba(1,28,53,.99),rgba(4,39,65,.93) 54%,rgba(5,41,61,.6)),url('assets/hero-village-composite.jpg') center/cover;color:#fff;padding:22px 0 26px}
.catalog-cta .eyebrow{color:#efb52e;font-size:16px}
.catalog-cta h2{font:normal 29px/1.05 Georgia,serif;margin:4px 0 4px}
.catalog-cta p{max-width:550px;font-size:16px;line-height:1.3;margin:0 0 11px}
.catalog-cta .btn{padding:9px 22px;min-height:36px;font-size:16px}
@media(max-width:800px){.catalog-difference-inner{grid-template-columns:1fr}.catalog-cards{grid-template-columns:1fr 1fr}.catalog-hero{background-position:57% center}.catalog-benefits{padding-inline:16px}.catalog-card>img{height:175px}}
@media(max-width:600px){.catalog-shell{width:calc(100% - 32px)}.catalog-hero{min-height:400px;background-position:65% center}.catalog-hero:before{background:linear-gradient(90deg,rgba(1,17,12,.93),rgba(1,17,12,.68))}.catalog-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.catalog-benefits .benefit:nth-child(2){border-right:0}.catalog-cards{grid-template-columns:1fr}.catalog-card>img{height:185px}.catalog-chain{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}.catalog-chain-step:nth-child(2):after{display:none}}
@media(max-width:360px){.catalog-hero h1{font-size:40px}.catalog-card-body{padding:14px}}

/* v8: Our Commodities ONLY - imagery and proportions taken from approved reference.
   Original approved homepage selectors remain unchanged. */
.catalog-hero {background:#10231a;overflow:hidden;isolation:isolate;min-height:284px}
.catalog-hero::after{content:"";position:absolute;inset:0 0 0 44%;z-index:-2;background-image:url('assets/catalog-hero-cocoa.jpg');background-repeat:no-repeat;background-size:cover;background-position:56% 50%}
.catalog-hero::before{z-index:-1;background:linear-gradient(90deg,rgba(1,17,12,.95) 0%,rgba(1,17,12,.94) 35%,rgba(1,17,12,.53) 55%,rgba(1,17,12,0) 78%)}
.catalog-hero .catalog-shell{padding-top:22px;padding-bottom:22px}
.catalog-hero h1{font-size:clamp(44px,5.3vw,66px)}
.catalog-cards{padding-top:18px}
.catalog-card>img{height:145px;object-fit:cover}
.catalog-cta{position:relative;isolation:isolate;background:linear-gradient(90deg,#04294b 0%,rgba(4,37,69,.97) 35%,rgba(4,37,69,.70) 57%,rgba(4,37,69,.13) 82%), url('assets/catalog-port.jpg') right center/cover no-repeat}
@media(max-width:800px){.catalog-hero::after{left:34%}.catalog-card>img{height:175px}}
@media(max-width:600px){.catalog-hero::after{left:0;opacity:.5;background-position:55% center}.catalog-hero::before{background:linear-gradient(90deg,rgba(1,17,12,.96),rgba(1,17,12,.72))}.catalog-card>img{height:185px}.catalog-cta{background-position:center,right center}}

/* Cocoa landing page — does not change the approved homepage */
body{overflow-x:hidden;color:#0c2c51} .cocoa-page{--blue:#083665;--navy:#002c55;--gold:#c58b17} .cocoa-page *{box-sizing:border-box}
.cocoa-hero{min-height:374px;position:relative;color:#fff;display:flex;align-items:center;background:linear-gradient(90deg,rgba(0,0,0,.91) 0%,rgba(0,0,0,.77) 40%,rgba(0,0,0,.08) 76%),url('assets/cocoa-person.jpg') center 42%/cover no-repeat}
.cocoa-hero .container{width:100%;max-width:1220px;position:relative;padding-top:32px;padding-bottom:32px} .cocoa-hero .inner{max-width:610px} .cocoa-hero h1{font:700 clamp(2.2rem,4.7vw,4.1rem)/1.03 Georgia,serif;margin:6px 0} .cocoa-hero h3{font:700 clamp(1.3rem,2.5vw,2rem)/1.12 Georgia,serif;margin:5px 0 12px}.cocoa-hero p{font-size:clamp(16px,1.6vw,18px);line-height:1.5;max-width:570px}
.cocoa-page .eyebrow{font-weight:800;letter-spacing:.05em;color:#0c6643;font-size:16px}.cocoa-hero .eyebrow{color:#e9a900}.cocoa-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px}.cocoa-actions a{font-size:16px}.cocoa-actions .outline{border:1px solid #fff;background:transparent;color:white}
.cocoa-benefits{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:0;max-width:1250px;margin:auto;padding:18px 10px}.cocoa-benefit{text-align:center;padding:0 10px;border-right:1px solid #ddd;min-height:102px}.cocoa-benefit:last-child{border:0}.cocoa-benefit svg{width:38px;height:38px;stroke:#057247;stroke-width:2;fill:none}.cocoa-benefit b{display:block;font-size:16px;color:#00468d;margin-top:6px}.cocoa-benefit p{font-size:16px;line-height:1.35;margin:3px 0}
.cocoa-grid{max-width:1240px;margin:0 auto;padding:18px 24px;display:grid;grid-template-columns:1.12fr .88fr;gap:18px 24px}.cocoa-photo{width:100%;height:100%;min-height:290px;object-fit:cover;border-radius:5px}.cocoa-copy h2{font:700 clamp(1.7rem,3.1vw,2.7rem)/1.04 Georgia,serif;color:#0047ae;margin:6px 0 10px}.cocoa-copy p{font-size:16px;line-height:1.48;margin-bottom:9px}.cocoa-checks{list-style:none;padding:0;margin:9px 0}.cocoa-checks li{display:flex;gap:10px;font-size:16px;color:#0750a4;line-height:1.35;margin:8px 0}.cocoa-checks li:before{content:'✓';flex:0 0 20px;display:grid;place-items:center;background:#c88b08;color:white;border-radius:50%;width:20px;height:20px;font-weight:bold}.cocoa-table{border-radius:5px;background:#f0f5f9;overflow:hidden}.cocoa-table h3{color:#fff;background:#07366f;font-size:16px;padding:10px 20px;margin:0}.cocoa-table dl{margin:0}.cocoa-table .trow{display:grid;grid-template-columns:34% 66%;border-bottom:1px solid #dce6f1;font-size:16px;line-height:1.28}.cocoa-table dt,.cocoa-table dd{margin:0;padding:9px 14px}.cocoa-table dt{font-weight:700;background:#e2ecf6}.cocoa-work{background:#eff6f1;border-radius:5px;overflow:hidden}.cocoa-work img{width:100%;height:150px;object-fit:cover;display:block}.cocoa-work section{padding:12px 22px}.cocoa-work h3{font-size:16px;color:#08603d;margin:0 0 9px}.cocoa-work ol{counter-reset:steps;list-style:none;margin:0;padding:0}.cocoa-work li{counter-increment:steps;display:flex;align-items:flex-start;gap:16px;font-size:16px;line-height:1.4;margin:10px 0}.cocoa-work li:before{content:counter(steps);display:grid;place-items:center;color:white;background:#c58b17;border-radius:50%;width:27px;height:27px;flex:0 0 27px;font-weight:700}
.cocoa-cta{min-height:215px;background:linear-gradient(90deg,#062849 1%,rgba(6,40,73,.92) 35%,rgba(6,40,73,.1) 84%),url('assets/catalog-port.jpg') center/cover no-repeat;display:flex;align-items:center;color:#fff}.cocoa-cta .container{width:100%;padding-top:25px;padding-bottom:25px}.cocoa-cta h2{font:700 clamp(1.6rem,3.2vw,2.3rem)/1.08 Georgia,serif;margin:6px 0}.cocoa-cta p{max-width:460px;font-size:16px}.cocoa-cta .eyebrow{color:#edab13}.cocoa-note{font-size:16px;color:#55677c;text-align:center;padding:10px 20px}
@media(max-width:850px){.cocoa-benefits{grid-template-columns:repeat(3,1fr);row-gap:12px}.cocoa-grid{grid-template-columns:1fr}.cocoa-photo{height:300px}.cocoa-hero{min-height:450px;background-position:62% center}.cocoa-hero .inner{max-width:520px}}
@media(max-width:530px){.cocoa-hero{background-image:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.57)),url('assets/cocoa-person.jpg');background-position:64% center}.cocoa-hero h1{font-size:2.3rem}.cocoa-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}.cocoa-benefit{min-height:120px}.cocoa-grid{padding:14px 14px}.cocoa-table .trow{grid-template-columns:40% 60%}.cocoa-table dt,.cocoa-table dd{padding:7px}.cocoa-actions .btn{width:100%;text-align:center}}


/* SINGLE FINAL COCOA LAYOUT: natural-height portrait; soft overlay, no hard edge */
.cocoa-hero {position:relative;isolation:isolate;overflow:hidden;min-height:440px;
  background:#08170f url('assets/cocoa-hero-balanced.jpg') center center/cover no-repeat!important;
  display:flex;align-items:center;}
.cocoa-hero::before,.cocoa-hero::after{display:none!important;content:none!important}
.cocoa-hero .container{width:100%;max-width:1560px;margin:auto;padding:32px 32px;position:relative;z-index:1}
.cocoa-hero .inner{width:min(100%,670px);max-width:670px}
.cocoa-hero h1{font-size:clamp(38px,3.8vw,60px);line-height:1.05}
.cocoa-hero h3{font-size:clamp(23px,2.1vw,30px);line-height:1.16}
.cocoa-hero p{font-size:16px;line-height:1.5;max-width:620px}
.cocoa-benefits{max-width:1760px;width:calc(100% - 40px)}
.cocoa-grid{max-width:1760px;width:calc(100% - 40px);padding:20px 0 26px;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:22px}
.cocoa-photo{display:block;width:100%;height:auto!important;min-height:0!important;object-fit:contain!important}
.cocoa-work img{height:auto!important;max-height:230px;object-fit:contain!important;background:#eff6f1}
.cocoa-cta{min-height:240px;position:relative;isolation:isolate;overflow:hidden;
  background:#062849 url('assets/cocoa-port-banner-clean.jpg') center center/cover no-repeat!important;
  display:flex;align-items:center}
.cocoa-cta .container{max-width:1560px;width:100%;padding:26px 32px}
@media(max-width:850px){.cocoa-grid{grid-template-columns:1fr;width:calc(100% - 28px)}
 .cocoa-hero{min-height:480px;background-position:67% center!important}
 .cocoa-hero .inner{max-width:550px}}
@media(max-width:550px){.cocoa-hero{min-height:555px;background-position:76% center!important}
 .cocoa-hero .container{padding:25px 18px}.cocoa-hero h1{font-size:38px}
 .cocoa-cta .container{padding:20px 16px}}

/* Requested Cocoa repairs: photo closer to text and smoothly blended; natural-sized harvest section; complete supply rows. */
.cocoa-hero{position:relative!important;background:#07120d!important;background-image:none!important;isolation:isolate;overflow:hidden;min-height:430px!important;display:flex;align-items:center;}
.cocoa-hero::before{display:block!important;content:""!important;position:absolute!important;inset:0!important;z-index:-2!important;background:url('assets/cocoa-hero-balanced.jpg') center/cover no-repeat!important;}
.cocoa-hero::after{display:block!important;content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;pointer-events:none;background:linear-gradient(90deg,#07120d 0%,rgba(7,18,13,.97) 23%,rgba(7,18,13,.77) 37%,rgba(7,18,13,.34) 51%,rgba(7,18,13,0) 66%)!important;}
.cocoa-hero .container{max-width:none!important;width:100%!important;margin:0!important;padding:28px clamp(26px,3vw,52px)!important;}
.cocoa-hero .inner{width:min(51vw,690px)!important;max-width:690px!important;}
.cocoa-grid{width:calc(100% - 48px)!important;max-width:1650px!important;margin:0 auto!important;padding:22px 0!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:20px 24px!important;align-items:start!important;}
.cocoa-photo{height:390px!important;max-height:390px!important;min-height:0!important;width:100%!important;object-fit:cover!important;object-position:center 45%!important;display:block!important;}
.cocoa-copy{min-width:0!important;overflow-wrap:break-word!important;}
.cocoa-table{overflow:visible!important;min-width:0!important;}
.cocoa-table .trow{grid-template-columns:minmax(150px,32%) minmax(0,68%)!important;}
.cocoa-table dt,.cocoa-table dd{min-width:0!important;overflow-wrap:break-word!important;}
.cocoa-work{min-width:0!important;overflow:hidden!important;}
.cocoa-work img{width:100%!important;height:160px!important;object-fit:cover!important;object-position:center 30%!important;display:block!important;max-height:none!important;}
@media(max-width:850px){.cocoa-grid{grid-template-columns:1fr!important;width:calc(100% - 28px)!important;}.cocoa-photo{height:auto!important;max-height:none!important;object-fit:contain!important;}.cocoa-hero .inner{width:min(100%,600px)!important;}}
@media(max-width:530px){.cocoa-hero{min-height:530px!important;}.cocoa-hero::before{background-position:63% center!important;}.cocoa-hero::after{background:linear-gradient(90deg,rgba(7,18,13,.98),rgba(7,18,13,.80) 65%,rgba(7,18,13,.35))!important;}.cocoa-hero .container{padding:26px 20px!important;}}

/* Single, uninterrupted port background matching Responsible Sourcing; all previous layered overrides superseded. */
.cocoa-cta {
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:#041d3a url('assets/port-cta-clean.jpg') center center / cover no-repeat!important;
  min-height:300px!important;
  display:flex!important;
  align-items:center!important;
}
.cocoa-cta::before {
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,rgba(4,29,58,.94) 0%,rgba(4,29,58,.84) 29%,rgba(4,29,58,.40) 58%,rgba(4,29,58,.05) 100%)!important;
  z-index:0!important;
  pointer-events:none!important;
}
.cocoa-cta .container {
  position:relative!important;
  z-index:1!important;
  max-width:none!important;
  width:100%!important;
  padding:32px clamp(24px,4vw,65px)!important;
  margin:0!important;
}


/* Approved Cocoa hero image: exact source, unedited. Only framing and fade. */
.cocoa-hero{position:relative!important;isolation:isolate!important;overflow:hidden!important;background:#07120d!important;background-image:none!important;}
.cocoa-hero::before{content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:-2!important;background-image:url('assets/cocoa-hero-approved-final.png')!important;background-repeat:no-repeat!important;background-size:auto 155%!important;background-position:right 22%!important;opacity:1!important;}
.cocoa-hero::after{content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:-1!important;background:linear-gradient(90deg,#07120d 0%,rgba(7,18,13,.96) 21%,rgba(7,18,13,.78) 34%,rgba(7,18,13,.44) 47%,rgba(7,18,13,.14) 59%,transparent 72%)!important;pointer-events:none!important;}
@media(max-width:850px){.cocoa-hero::before{background-size:auto 120%!important;background-position:64% 15%!important}.cocoa-hero::after{background:linear-gradient(90deg,rgba(7,18,13,.98) 0%,rgba(7,18,13,.9) 46%,rgba(7,18,13,.45) 76%,rgba(7,18,13,.17) 100%)!important}}
@media(max-width:530px){.cocoa-hero::before{background-size:auto 110%!important;background-position:68% 12%!important}}


/* Unified page banner proportions — match approved About Us desktop header (440px). */
@media (min-width: 951px) {
  .cocoa-hero { box-sizing:border-box!important; height:auto!important; min-height:440px!important; }
}
@media (min-width: 641px) and (max-width: 950px) {
  .cocoa-hero { height:auto!important; min-height:470px!important; }
}
@media (max-width:640px) {
  .cocoa-hero { height:auto!important; min-height:560px!important; }
}

/* Same lower-banner height as About Us; allow text to expand rather than clip. */
.cocoa-cta { box-sizing:border-box!important; height:auto!important; min-height:280px!important; }
.cocoa-cta > * { position:relative; z-index:1; }
