/* Supplied material references, framed without the presentation text. */
.origin-visuals{position:relative;padding-right:5px}
.origin-visuals figure{background:#faf8f0;border:8px solid #faf8f0;border-radius:9px;overflow:hidden}
.biomass-reference{width:92%;box-shadow:0 8px 35px #27371b0a}
.photo-window{aspect-ratio:1.55;overflow:hidden;border-radius:4px;background:#f7f5ef}
.reference-photo{position:relative;display:block;overflow:hidden;width:100%}
.reference-photo img{position:absolute;max-width:none;height:auto;display:block}
.source-seeds{aspect-ratio:945/737}
.source-seeds img{width:145.503%;top:0;left:0}
.source-granules{aspect-ratio:799/621}
.source-granules img{width:169.212%;left:-7.885%;top:-10.789%}
.origin-visuals figcaption{padding:17px 17px 13px;display:flex;flex-direction:column;gap:6px}
.origin-visuals figcaption .eyebrow{font-size:8px;letter-spacing:1.6px}
.origin-visuals figcaption strong{font-family:var(--serif);font-size:23px;font-weight:400;line-height:1.2;letter-spacing:-.4px}
.resin-reference{position:relative;width:64%;margin:12px 0 0 auto;box-shadow:0 8px 30px #27371b1a;z-index:1}
.resin-reference .photo-window{aspect-ratio:1.7}
.resin-reference figcaption{padding:13px 10px 9px}
.resin-reference figcaption strong{font-size:21px}
.origin-transfer{position:absolute;bottom:67px;left:14%;color:#7e8a57;transform:rotate(25deg)}
.origin-transfer .icon{width:59px;height:59px;stroke-width:.8}

/* Six image buttons follow the arrows clockwise; DOM order remains 1–6. */
.cycle-illustration{position:relative;margin-top:40px;padding:32px 5%;isolation:isolate}
.cycle-illustration .cycle-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,245px);row-gap:90px;margin:0;position:relative;z-index:1}
.cycle-illustration .cycle-tab{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;align-self:start;background:none;border:0!important;padding:0 10px 15px!important;color:var(--forest);min-width:0}
.cycle-illustration .cycle-tab:nth-child(1){grid-area:1/1}
.cycle-illustration .cycle-tab:nth-child(2){grid-area:1/2}
.cycle-illustration .cycle-tab:nth-child(3){grid-area:1/3}
.cycle-illustration .cycle-tab:nth-child(4){grid-area:2/3}
.cycle-illustration .cycle-tab:nth-child(5){grid-area:2/2}
.cycle-illustration .cycle-tab:nth-child(6){grid-area:2/1}
.cycle-visual{width:178px;height:166px;display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate;border-radius:50%;margin-bottom:18px;transition:transform .2s,box-shadow .2s}
.cycle-visual:before{content:'';position:absolute;inset:5px -2px;background:#eeeee1;border-radius:50%;z-index:-1}
.cycle-visual>img{width:100%;height:100%;object-fit:contain;display:block}
.cycle-visual .cycle-fruit{width:156px;height:156px;object-fit:cover;object-position:40% center;border-radius:50%}
.cycle-visual>.source-granules{width:156px;height:156px;border-radius:50%;background:#f4f3eb;aspect-ratio:auto;mix-blend-mode:multiply}
.cycle-visual>.source-granules img{width:245%;left:-62%;top:-17%}
.cycle-illustration .cycle-tab.active .cycle-visual{box-shadow:0 0 0 2px #718349,0 0 0 8px #e9eddf}
.cycle-illustration .cycle-tab:hover .cycle-visual{transform:translateY(-4px)}
.cycle-illustration .cycle-tab:focus-visible{outline:2px solid #8b6040;outline-offset:8px;border-radius:6px}
.cycle-illustration .cycle-tab.active{background:none}
.cycle-step-line{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:3px}
.cycle-step-index{font-size:10px;letter-spacing:1px;color:#85936b}
.cycle-illustration .cycle-tab strong{font-size:17px;font-weight:500;margin:0}
.cycle-illustration .cycle-tab>.cycle-step-caption{font-size:10px;color:var(--muted);line-height:1.5;max-width:180px}
.cycle-arrows{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke:#95a376;stroke-width:1.3;z-index:0;pointer-events:none}
.cycle-arrows>path{marker-end:url(#cycle-arrowhead)}
.cycle-arrows marker path{fill:none;stroke:#819363;stroke-width:1.3}
.cycle-arrows .return-path{stroke-dasharray:4 5}
.cycle-arrows-mobile{display:none}
.cycle-loop-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;text-align:center;z-index:2;color:var(--forest);pointer-events:none;width:340px}
.cycle-loop-message>.icon{display:none;width:23px;height:23px;stroke-width:1;margin-bottom:11px;color:var(--olive)}
.cycle-loop-message>span{font-family:var(--serif);font-size:25px;line-height:1.18;letter-spacing:-.5px}
.cycle-loop-message em{color:var(--olive)}
.cycle-loop-message small{font-size:6px;letter-spacing:1.6px;margin-top:13px;color:#788568}
.cycle-illustration-note{font-size:9px;line-height:1.8;text-align:center;margin:0 0 22px;color:#7b846e}
.cycle-detail{border-radius:7px}

@media(max-width:1100px){
  .origin-grid{gap:50px}
  .origin-visuals figcaption{padding:14px 9px 10px}
  .origin-visuals figcaption strong{font-size:21px}
  .resin-reference{width:66%;margin-top:12px}
  .resin-reference figcaption strong{font-size:18px}
  .origin-transfer{left:11%;bottom:52px}
  .cycle-visual{width:160px;height:160px}
  .cycle-visual .cycle-fruit,.cycle-visual>.source-granules{width:146px;height:146px}
  .cycle-illustration .cycle-tab strong{font-size:16px}
}
@media(max-width:800px){
  .origin-grid{gap:30px}
  .origin-visuals figure{border-width:6px}
  .origin-visuals figcaption .eyebrow{font-size:6px;letter-spacing:1.1px}
  .origin-visuals figcaption strong{font-size:18px}
  .resin-reference{width:72%;margin-top:12px}
  .resin-reference figcaption strong{font-size:16px}
  .origin-transfer{left:6%;bottom:44px}
  .origin-transfer .icon{width:40px;height:40px}
  .cycle-illustration{padding-block:30px}
  .cycle-illustration .cycle-tabs{grid-template-rows:repeat(2,215px);row-gap:80px}
  .cycle-visual{width:140px;height:140px;margin-bottom:15px}
  .cycle-visual .cycle-fruit,.cycle-visual>.source-granules{width:128px;height:128px}
  .cycle-illustration .cycle-tab strong{font-size:15px}
  .cycle-illustration .cycle-tab>.cycle-step-caption{font-size:9px}
  .cycle-loop-message{top:50%;width:280px}
  .cycle-loop-message>span{font-size:22px}
  .cycle-loop-message>.icon{width:20px;height:20px;margin-bottom:8px}
  .cycle-loop-message small{font-size:5px;margin-top:10px}
}
@media(max-width:600px){
  .origin-visuals{width:100%;padding:0}
  .biomass-reference{width:92%}
  .origin-visuals figcaption{padding:14px 11px 10px}
  .origin-visuals figcaption .eyebrow{font-size:7px;letter-spacing:1.2px}
  .origin-visuals figcaption strong{font-size:21px}
  .resin-reference{width:66%;margin-top:12px}
  .resin-reference figcaption strong{font-size:18px}
  .origin-transfer{left:10%;bottom:45px}
  .origin-transfer .icon{width:45px;height:45px}
  .cycle-illustration{margin-top:28px;padding:28px 20px}
  .cycle-illustration .cycle-tabs{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,200px);row-gap:48px}
  .cycle-illustration .cycle-tab{padding:0 3px 10px!important}
  .cycle-illustration .cycle-tab:nth-child(1){grid-area:1/1}
  .cycle-illustration .cycle-tab:nth-child(2){grid-area:1/2}
  .cycle-illustration .cycle-tab:nth-child(3){grid-area:2/2}
  .cycle-illustration .cycle-tab:nth-child(4){grid-area:2/1}
  .cycle-illustration .cycle-tab:nth-child(5){grid-area:3/1}
  .cycle-illustration .cycle-tab:nth-child(6){grid-area:3/2}
  .cycle-visual{width:126px;height:126px;margin-bottom:18px}
  .cycle-visual:before{inset:4px 0}
  .cycle-visual .cycle-fruit,.cycle-visual>.source-granules{width:116px;height:116px}
  .cycle-illustration .cycle-tab.active .cycle-visual{box-shadow:0 0 0 1px #718349,0 0 0 5px #e9eddf}
  .cycle-step-line{gap:6px;margin-bottom:4px;white-space:nowrap}
  .cycle-step-index{font-size:8px}
  .cycle-illustration .cycle-tab strong{font-size:13px}
  .cycle-illustration .cycle-tab>.cycle-step-caption{font-size:9px;max-width:120px}
  .cycle-arrows-desktop,.cycle-loop-message{display:none}
  .cycle-arrows-mobile{display:block;stroke-width:1}
  .cycle-illustration-note{font-size:8px;text-align:left;margin:4px 0 20px}
}
@media(max-width:370px){
  .cycle-visual{width:112px;height:126px}
  .cycle-visual .cycle-fruit,.cycle-visual>.source-granules{width:107px;height:107px}
  .cycle-illustration .cycle-tab strong{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.cycle-visual{transition:none}}
