:root { --product-cocoa: #352019; --product-cocoa-light: #7d4b37; --product-cream: #f3f0e7; --product-ink: #10261f; --product-mint: #a4ddce; }
.product-page { color: var(--product-ink); background: var(--product-cream); }
.product-page .section { padding-block: clamp(72px,8vw,112px); }
.product-page .product-related.section { padding-top: 0; }
.product-header { color: #fff; }.product-header.is-scrolled { color: var(--ink); }.desktop-nav .is-current { opacity: 1; }

.product-hero { position: relative; min-height: 650px; overflow: hidden; color: #fff; background: radial-gradient(circle at 78% 36%,rgba(164,221,206,.14),transparent 0 34%),linear-gradient(112deg,#07140f 0%,#12261e 100%); background-size: cover; background-position: center; background-repeat: no-repeat; }
.product-hero::before { position: absolute; inset: 0; content: ""; opacity: .15; background: radial-gradient(circle at 72% 47%,rgba(255,198,151,.15),transparent 0 35%); pointer-events: none; }
.product-breadcrumb { position: relative; z-index: 2; display: flex; gap: 9px; padding-top: 108px; color: rgba(255,255,255,.65); font-size: .67rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.product-breadcrumb a { color: #fff; text-decoration: none; }
.product-hero__layout { position: relative; display: grid; grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr); min-height: 515px; align-items: center; gap: clamp(45px,8vw,130px); padding-bottom: 38px; }
.product-hero__copy { max-width: 600px; padding-block: 55px; }
.product-hero h1 { max-width: 620px; margin: 14px 0 20px; font-size: clamp(3rem,5vw,4.7rem); font-weight: 600; letter-spacing: -.065em; line-height: .92; text-wrap: balance; }
.product-hero h1 span { color: #dda684; }
.product-hero__intro { max-width: 535px; margin: 0 0 23px; color: #d8c5ba; font-size: clamp(.98rem,1.2vw,1.1rem); line-height: 1.6; }
.product-hero__segments { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 29px; padding: 0; list-style: none; }
.product-hero__segments li { padding: 6px 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; color: #eadbd3; font-size: .63rem; font-weight: 700; letter-spacing: .04em; }
.product-hero__actions { display: flex; align-items: center; gap: 25px; }.product-button { min-height: 48px; color: var(--product-cocoa); border-color: #fff; background: #fff; }.product-button:hover { color: #fff; background: transparent; }.product-text-link { color: #fff; font-size: .75rem; font-weight: 700; text-decoration: none; }
.product-hero__stage { position: relative; display: grid; height: 450px; place-items: center; overflow: hidden; border-left: 1px solid rgba(255,255,255,.16); }
.product-hero__stage::before { position: absolute; width: 390px; height: 390px; content: ""; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; }
.product-hero__stage--plain::before { content: none; }
.product-hero__stage img { position: relative; z-index: 2; width: min(58%,310px); height: 75%; object-fit: contain; filter: drop-shadow(0 30px 22px rgba(0,0,0,.28)); transform: rotate(2deg); }
.product-hero__stage--industrial img { width: min(48%,225px); height: 90%; max-height: 405px; transform: rotate(1deg); }
.product-hero__percentage { position: absolute; left: 50%; color: rgba(255,255,255,.055); font-family: var(--display); font-size: clamp(15rem,22vw,23rem); font-weight: 600; letter-spacing: -.12em; line-height: 1; transform: translateX(-53%); }
.product-hero__caption { position: absolute; z-index: 3; right: 0; bottom: 22px; display: grid; min-width: 145px; gap: 3px; padding: 12px 15px; border-top: 1px solid rgba(255,255,255,.2); color: #fff; }.product-hero__caption span { color: #d8c5ba; font-size: .56rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }.product-hero__caption strong { font-family: var(--display); font-size: 1.35rem; font-weight: 600; }

.product-intro { background: var(--product-cream); }.product-intro__grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(300px,.65fr); gap: clamp(60px,11vw,165px); }.product-intro h2 { max-width: 680px; margin: 0; font-size: clamp(2.35rem,3.8vw,4.1rem); letter-spacing: -.055em; line-height: .98; }.product-intro__body { padding-top: 25px; }.product-intro__body p { margin: 0 0 18px; color: var(--ink-soft); font-size: .96rem; line-height: 1.66; }

.product-applications { padding-block: clamp(78px,9vw,126px); color: #fff; background: var(--green-deep); }.product-applications__heading { display: grid; grid-template-columns: .35fr 1fr; gap: 40px; align-items: end; margin-bottom: 42px; }.product-applications h2 { max-width: 780px; margin: 0; font-size: clamp(2.25rem,3.6vw,3.85rem); letter-spacing: -.055em; line-height: 1; }.product-applications__layout { display: grid; grid-template-columns: 1.25fr .75fr .62fr; min-height: 465px; gap: 10px; }.product-application { position: relative; min-width: 0; min-height: 330px; overflow: hidden; margin: 0; }.product-application img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }.product-application:hover img { transform: scale(1.025); }.product-application::after { position: absolute; inset: 0; content: ""; background: linear-gradient(0deg,rgba(2,22,15,.88),transparent 58%); }.product-application figcaption { position: absolute; z-index: 2; right: 25px; bottom: 25px; left: 25px; }.product-application figcaption span { display: block; margin-bottom: 7px; color: var(--product-mint); font-size: .61rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.product-application figcaption strong { display: block; max-width: 370px; font-family: var(--display); font-size: clamp(1.4rem,2vw,2rem); font-weight: 600; letter-spacing: -.035em; line-height: 1.05; }.product-applications__list { display: flex; flex-direction: column; padding: 28px 25px; border: 1px solid rgba(255,255,255,.13); }.product-applications__list > p { margin: 0 0 21px; color: var(--product-mint); font-size: .61rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.product-applications__list ul { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }.product-applications__list li { padding: 14px 0; border-top: 1px solid rgba(255,255,255,.13); font-size: .82rem; }.product-applications__list a { margin-top: auto; padding-top: 15px; border-top: 1px solid rgba(255,255,255,.13); color: #fff; font-size: .69rem; font-weight: 700; text-decoration: none; }

.product-decision { background: #f8f7f2; }.product-decision__heading { display: grid; grid-template-columns: .34fr .78fr .5fr; gap: 35px; align-items: end; margin-bottom: 38px; }.product-decision h2 { max-width: 550px; margin: 0; font-size: clamp(2.2rem,3.25vw,3.5rem); letter-spacing: -.05em; line-height: 1; }.product-decision__heading > p:last-child { margin: 0 0 3px; color: var(--ink-soft); font-size: .78rem; line-height: 1.55; }.product-decision__layout { display: grid; grid-template-columns: 1fr 360px; gap: 18px; align-items: start; }.product-specs { display: grid; grid-template-columns: repeat(2,1fr); margin: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.product-specs div { min-height: 112px; padding: 22px 20px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.product-specs dt { margin-bottom: 9px; color: var(--ink-soft); font-size: .6rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }.product-specs dd { margin: 0; font-family: var(--display); font-size: clamp(1.25rem,1.8vw,1.65rem); font-weight: 600; letter-spacing: -.03em; line-height: 1.1; }.product-support { position: sticky; top: 94px; padding: 30px 27px; color: #fff; background: var(--green); }.product-support > span { color: var(--product-mint); font-size: .6rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.product-support h3 { margin: 16px 0 14px; font-size: 1.75rem; font-weight: 600; letter-spacing: -.045em; line-height: 1.05; }.product-support p { margin: 0 0 25px; color: #c8ddd6; font-size: .82rem; line-height: 1.58; }.product-support .button { width: 100%; color: #fff; border-color: rgba(255,255,255,.35); }

.product-documents { padding-block: clamp(75px,8vw,108px); color: #fff; background: var(--product-cocoa); }.product-documents__grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(400px,1fr); gap: clamp(60px,12vw,175px); align-items: center; }.product-documents__intro h2 { max-width: 540px; margin: 0 0 18px; font-size: clamp(2.2rem,3.45vw,3.7rem); letter-spacing: -.055em; line-height: 1; }.product-documents__intro > p:last-child { max-width: 500px; color: #d8c5ba; font-size: .88rem; line-height: 1.6; }.product-documents__list { margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.18); list-style: none; }.product-documents__list li { display: flex; min-height: 64px; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid rgba(255,255,255,.18); }.product-documents__list span { font-size: .88rem; font-weight: 600; }.product-documents__list small { color: #d8c5ba; font-size: .59rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

.product-audiences__heading { display: grid; grid-template-columns: .34fr 1fr; gap: 38px; align-items: end; margin-bottom: 40px; }.product-audiences h2 { max-width: 650px; margin: 0; font-size: clamp(2.2rem,3.45vw,3.75rem); letter-spacing: -.055em; line-height: 1; }.product-audiences__grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); }.product-audiences article { display: flex; min-height: 250px; flex-direction: column; padding: 27px 34px 0 0; border-right: 1px solid var(--line); }.product-audiences article + article { padding-left: 34px; }.product-audiences article:last-child { border-right: 0; }.product-audiences h3 { margin: 0 0 13px; font-size: 1.65rem; font-weight: 600; letter-spacing: -.04em; }.product-audiences article p { max-width: 340px; color: var(--ink-soft); font-size: .84rem; line-height: 1.57; }.product-audiences article a { margin-top: auto; padding-top: 18px; color: var(--green); font-size: .69rem; font-weight: 700; text-decoration: none; }

.product-related { padding-top: 0; }.product-related__heading { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 32px; }.product-related h2 { margin: 0; font-size: clamp(2.1rem,3vw,3.25rem); letter-spacing: -.05em; }.product-related__heading > a { padding-bottom: 7px; color: var(--green); font-size: .72rem; font-weight: 700; text-decoration: none; }.product-related__grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }.related-product { display: grid; min-height: 280px; grid-template-columns: minmax(210px,.72fr) 1fr; color: var(--ink); background: #fff; text-decoration: none; }.related-product__visual { display: grid; place-items: center; overflow: hidden; background: linear-gradient(145deg,#3b2118,#88533c); }.related-product--cocoa .related-product__visual { background: linear-gradient(145deg,#283d29,#657e48); }.related-product__visual img { width: 68%; height: 230px; object-fit: contain; filter: drop-shadow(0 18px 13px rgba(0,0,0,.22)); transition: transform .28s ease; }.related-product:hover .related-product__visual img { transform: translateY(-4px) rotate(1.5deg); }.related-product__copy { display: flex; flex-direction: column; padding: 28px 27px 24px; }.related-product__copy small { margin-bottom: 10px; color: var(--green); font-size: .59rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }.related-product__copy strong { max-width: 280px; font-family: var(--display); font-size: clamp(1.55rem,2.2vw,2.25rem); font-weight: 600; letter-spacing: -.045em; line-height: 1.03; }.related-product__copy em { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 15px; border-top: 1px solid var(--line); color: var(--ink-soft); font-size: .65rem; font-style: normal; font-weight: 700; }.related-product__copy b { color: var(--green); font-size: .9rem; }

.product-cta { color: #fff; background: var(--green); }.product-cta__grid { display: grid; grid-template-columns: .3fr 1fr auto; gap: 40px; align-items: center; padding-block: clamp(62px,7vw,95px); }.product-cta h2 { max-width: 680px; margin: 0; font-size: clamp(2rem,3.2vw,3.45rem); letter-spacing: -.055em; line-height: 1; }

@media (max-width: 980px) { .product-hero__layout { grid-template-columns: 1fr 390px; gap: 35px; }.product-applications__layout { grid-template-columns: 1.1fr .9fr; }.product-applications__list { grid-column: 1 / -1; min-height: 260px; }.product-decision__layout { grid-template-columns: 1fr 320px; }.product-cta__grid { grid-template-columns: 1fr; gap: 22px; }.product-cta .button { justify-self: start; } }
@media (max-width: 760px) { .product-hero { min-height: auto; }.product-breadcrumb { padding-top: 94px; }.product-hero__layout,.product-intro__grid,.product-decision__heading,.product-decision__layout,.product-documents__grid { grid-template-columns: 1fr; }.product-hero__copy { padding: 42px 0 12px; }.product-hero__stage { height: 390px; border-left: 0; border-top: 1px solid rgba(255,255,255,.16); }.product-hero__stage img { width: 245px; }.product-intro__grid { gap: 30px; }.product-intro__body { padding-top: 0; }.product-applications__heading,.product-audiences__heading { grid-template-columns: 1fr; gap: 18px; }.product-decision__heading { gap: 18px; }.product-support { position: static; }.product-documents__grid { gap: 42px; }.product-audiences__grid { grid-template-columns: 1fr; }.product-audiences article,.product-audiences article + article { min-height: 210px; padding: 24px 0; border-right: 0; border-bottom: 1px solid var(--line); }.product-related__heading { align-items: flex-start; flex-direction: column; }.related-product { grid-template-columns: 190px 1fr; } }
@media (max-width: 560px) { .product-hero h1 { font-size: clamp(2.85rem,13vw,4rem); }.product-hero__actions { align-items: flex-start; flex-direction: column; gap: 18px; }.product-hero__stage { height: 350px; }.product-hero__stage::before { width: 300px; height: 300px; }.product-hero__stage img { width: 205px; }.product-hero__percentage { font-size: 13rem; }.product-applications__layout,.product-specs,.product-related__grid { grid-template-columns: 1fr; }.product-application { min-height: 315px; }.product-applications__list { grid-column: auto; }.product-specs div { min-height: 94px; }.related-product { min-height: 245px; grid-template-columns: 145px 1fr; }.related-product__visual img { width: 80%; height: 180px; }.related-product__copy { padding: 22px 18px 19px; }.related-product__copy strong { font-size: 1.45rem; } }
@media (prefers-reduced-motion: reduce) { .product-application img,.related-product__visual img { transition: none; } }

/* Blocos modulares da single de produto. */
.product-differentials { background: #edf3ee; }
.product-differentials__heading { display: grid; grid-template-columns: .34fr 1fr; gap: 38px; align-items: end; margin-bottom: 38px; }
.product-differentials h2 { max-width: 620px; margin: 0; font-size: clamp(2.2rem,3.45vw,3.7rem); letter-spacing: -.055em; line-height: 1; }
.product-differentials__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.product-differentials__item { min-height: 196px; padding: 26px 26px 18px 0; border-right: 1px solid var(--line); }
.product-differentials__item + .product-differentials__item { padding-left: 26px; }
.product-differentials__item:last-child { border-right: 0; }
.product-differentials__item > strong { display: block; margin-bottom: 22px; color: var(--green); font-family: var(--display); font-size: clamp(1.6rem,2.6vw,2.5rem); font-weight: 600; letter-spacing: -.05em; }
.product-differentials__item h3 { margin: 0 0 8px; font-size: 1.05rem; font-weight: 700; letter-spacing: -.02em; }
.product-differentials__item p { margin: 0; color: var(--ink-soft); font-size: .8rem; line-height: 1.55; }
.product-technical-additional { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1px; margin-top: 18px; border: 1px solid var(--line); background: var(--line); }
.product-technical-additional > .eyebrow { grid-column: 1 / -1; margin: 0; padding: 16px 20px; background: #f8f7f2; }
.product-technical-additional > div { min-height: 118px; padding: 20px; background: #f8f7f2; }
.product-technical-additional h3 { margin: 0 0 8px; color: var(--ink-soft); font-size: .62rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.product-technical-additional p { margin: 0; font-size: .86rem; line-height: 1.55; }
.product-documents__list a,.product-documents__list button { display: inline-flex; align-items: center; gap: 9px; padding: 0; color: #fff; border: 0; background: transparent; font: inherit; font-size: .88rem; font-weight: 600; text-align: left; text-decoration: none; cursor: pointer; }
.product-documents__list a:hover,.product-documents__list button:hover { color: var(--product-mint); }
.product-documents__list a:focus-visible,.product-documents__list button:focus-visible { outline: 2px solid var(--product-mint); outline-offset: 4px; }
.product-related__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.related-product { min-width: 0; grid-template-columns: 1fr; }
.related-product__visual { min-height: 210px; }
.related-product__visual img { height: 205px; }
.related-product--category-leites-em-po .related-product__visual,.related-product--category-soro-e-derivados .related-product__visual,.related-product--category-proteinas .related-product__visual,.related-product--category-gorduras-em-po .related-product__visual { background: linear-gradient(145deg,#163a34,#5a8278); }
.related-product--category-batata-desidratada .related-product__visual { background: linear-gradient(145deg,#41321d,#947039); }
.related-product--category-doces-e-complementos .related-product__visual { background: linear-gradient(145deg,#43200f,#9e5e2e); }
.product-related-content { background: #fff; }
.product-related-content__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.product-related-content__grid a { display: flex; min-height: 130px; align-items: flex-end; justify-content: space-between; gap: 18px; padding: 24px; color: var(--ink); border: 1px solid var(--line); background: #f8f7f2; font-family: var(--display); font-size: clamp(1.25rem,1.8vw,1.7rem); font-weight: 600; letter-spacing: -.035em; line-height: 1.08; text-decoration: none; transition: background-color .2s ease, color .2s ease; }
.product-related-content__grid a:hover { color: #fff; background: var(--green); }
.product-related-content__grid a:focus-visible { outline: 3px solid var(--green); outline-offset: 3px; }

@media (max-width: 980px) { .product-differentials__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.product-differentials__item:nth-child(2n) { border-right: 0; }.product-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .product-differentials__heading { grid-template-columns: 1fr; gap: 18px; }.product-differentials__item { padding: 22px 0; border-right: 0; border-bottom: 1px solid var(--line); }.product-differentials__item + .product-differentials__item { padding-left: 0; }.product-related-content__grid { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .product-differentials__grid,.product-related__grid { grid-template-columns: 1fr; }.product-differentials__item { min-height: 0; }.related-product { grid-template-columns: 1fr; }.related-product__visual { min-height: 180px; }.related-product__visual img { height: 170px; } }
