.solutions-hero, .solutions-why, .solutions-inquiry { position: relative; overflow: hidden; isolation: isolate; }
.solutions-hero > img, .solutions-why > img, .solutions-inquiry > img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.solutions-hero { min-height: clamp(420px, 34vw, 520px); display: grid; align-items: center; color: #fff; }
.solutions-hero > img { object-position: center 54%; }
.solutions-hero__wash { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgb(2 56 30 / 85%) 0%, rgb(3 64 35 / 68%) 37%, rgb(3 64 35 / 10%) 73%, rgb(3 64 35 / 2%) 100%); }
.solutions-hero__content { max-width: 1460px; padding-block: 72px; }
.solutions-eyebrow { margin: 0 0 9px; color: #249445; font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.solutions-hero .solutions-eyebrow { color: #e7ffca; }
.solutions-hero h1, .solutions-heading h2, .solution-detail h2, .solutions-why h2, .solutions-inquiry h2 { margin: 0; font-weight: 800; letter-spacing: -.045em; line-height: 1.05; }
.solutions-hero h1 { max-width: 720px; font-size: clamp(2.55rem, 4.15vw, 4.3rem); }
.solutions-hero__content > p:not(.solutions-eyebrow) { max-width: 580px; margin: 20px 0 0; font-size: 1rem; font-weight: 600; line-height: 1.5; }
.solutions-button-row { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 28px; }
.solutions-button { display: inline-flex; align-items: center; justify-content: center; gap: 11px; min-height: 42px; border: 0; border-radius: 999px; padding: 11px 20px; font: inherit; font-size: .78rem; font-weight: 800; line-height: 1; text-decoration: none; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.solutions-button:hover { transform: translateY(-2px); }
.solutions-button--gold { color: #173b25; background: #f4cf25; box-shadow: 0 8px 18px rgb(80 61 0 / 18%); }
.solutions-button--gold:hover { background: #ffdc39; box-shadow: 0 11px 23px rgb(80 61 0 / 25%); }
.solutions-button--light { color: #10512b; background: #fff; box-shadow: 0 8px 18px rgb(0 37 18 / 16%); }
.solutions-overview { padding: 70px 0 82px; background: #fff; }
.solutions-heading { margin-bottom: 32px; }
.solutions-heading--center { max-width: 780px; margin-inline: auto; text-align: center; }
.solutions-heading h2 { color: #0c4b2b; font-size: clamp(1.8rem, 2.5vw, 2.75rem); }
.solutions-heading > p:not(.solutions-eyebrow) { margin: 13px auto 0; color: #65786b; font-size: .96rem; }
.solutions-overview__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.solution-overview-card { display: block; overflow: hidden; border: 1px solid #e1ece0; border-radius: 12px; color: #17452a; background: #fff; box-shadow: 0 10px 22px rgb(8 71 33 / 8%); text-decoration: none; transition: transform .22s ease, box-shadow .22s ease; }
.solution-overview-card:hover { box-shadow: 0 17px 32px rgb(8 71 33 / 15%); transform: translateY(-5px); }
.solution-overview-card > img { display: block; width: 100%; aspect-ratio: 5 / 3.05; object-fit: cover; transition: transform .38s ease; }
.solution-overview-card:hover > img { transform: scale(1.05); }
.solution-overview-card__body { display: grid; grid-template-columns: 42px minmax(0, 1fr) 18px; gap: 14px; align-items: center; min-height: 144px; padding: 22px; }
.solution-overview-card__body strong, .solution-overview-card__body small { display: block; }
.solution-overview-card__body strong { margin: 0 0 9px; font-size: 1rem; font-weight: 800; line-height: 1.18; }
.solution-overview-card__body small { margin: 0; color: #637467; font-size: .78rem; line-height: 1.45; }
.solution-overview-card__body b { color: #20873e; font-size: 1.1rem; }
.solution-overview-card__icon { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 50%; background: #eef8ec; }
.solutions-icon { width: 24px; height: 24px; fill: none; stroke: #19843a; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.solution-detail { padding: 88px 0; background: #fbfdf9; }
.solution-detail:nth-of-type(2n) { background: #fff; }
.solution-detail__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.04fr); align-items: center; gap: clamp(44px, 6vw, 94px); }
.solution-detail__copy { min-width: 0; max-width: 650px; }
.solution-detail[id="beekeeping-honey"] .solution-detail__copy { order: -1; }
.solution-detail h2 { color: #0d4b2b; font-size: clamp(2rem, 3vw, 3.1rem); }
.solution-detail__copy > h3 { margin: 12px 0 0; color: #309849; font-size: 1.12rem; line-height: 1.35; }
.solution-detail__copy > p:not(.solutions-eyebrow) { margin: 18px 0 0; color: #586c5d; font-size: 1rem; line-height: 1.7; }
.solution-detail__copy > .solutions-button { margin-top: 30px; }
.solution-detail__image { min-height: 360px; margin: 0; overflow: hidden; border-radius: 12px; box-shadow: 0 18px 35px rgb(7 65 29 / 12%); }
.solution-detail__image img { display: block; width: 100%; height: 100%; min-height: 360px; object-fit: cover; }
.solution-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 32px; }
.solution-points article { min-width: 0; }
.solution-points .solutions-icon { width: 31px; height: 31px; }
.solution-points h3 { margin: 10px 0 0; color: #174b2b; font-size: .9rem; line-height: 1.3; }
.solution-points p { margin: 7px 0 0; color: #6a796e; font-size: .8rem; line-height: 1.52; }
.solution-points--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.solution-crop-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 5px; min-height: 438px; overflow: hidden; border-radius: 12px; background: #fff; box-shadow: 0 18px 35px rgb(7 65 29 / 12%); }
.solution-crop-gallery img { width: 100%; height: 100%; min-height: 0; object-fit: cover; transition: transform .35s ease; }
.solution-crop-gallery img:nth-child(1) { object-position: 36% center; }
.solution-crop-gallery img:nth-child(2) { object-position: 35% 47%; }
.solution-crop-gallery img:nth-child(3) { object-position: 50% 46%; }
.solution-crop-gallery img:nth-child(4) { object-position: 58% center; }
.solution-crop-gallery img:hover { transform: scale(1.05); }
.solutions-process { padding: 76px 0; background: #f0f8ed; }
.solutions-process__list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 0; padding: 22px 16px; border-radius: 14px; background: #fff; box-shadow: 0 10px 26px rgb(8 71 33 / 7%); list-style: none; }
.solutions-process__list li { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 17px; min-width: 0; padding: 7px 26px 11px; border-right: 1px solid #dce9db; }
.solutions-process__list li:last-child { border-right: 0; }
.solutions-process__list .solutions-icon { width: 48px; height: 48px; padding: 9px; border-radius: 50%; background: #e9f6e7; }
.solutions-process__list b { color: #40a057; font-size: .68rem; }
.solutions-process__list h3 { min-height: 2.32em; margin: 2px 0 0; color: #174b2b; font-size: .94rem; line-height: 1.2; }
.solutions-process__list p { min-height: 2.7em; margin: 6px 0 0; color: #708074; font-size: .74rem; line-height: 1.42; }
.solutions-why { padding: 72px 0 76px; color: #fff; }
.solutions-why > img { object-position: center; }
.solutions-why__wash { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgb(4 67 31 / 88%) 0%, rgb(4 67 31 / 72%) 56%, rgb(4 67 31 / 48%) 100%); }
.solutions-why__content { max-width: 1460px; }
.solutions-why__content > .solutions-eyebrow { color: #c4f379; }
.solutions-why h2 { max-width: 850px; font-size: clamp(2rem, 3.15vw, 3.25rem); }
.solutions-why__content > p:not(.solutions-eyebrow) { max-width: 790px; margin: 16px 0 0; color: rgb(255 255 255 / 92%); font-size: 1rem; line-height: 1.68; }
.solutions-why__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 34px; }
.solutions-why__grid article { min-height: 156px; padding: 22px; border: 1px solid rgb(255 255 255 / 48%); border-radius: 11px; background: rgb(255 255 255 / 91%); color: #164529; }
.solutions-why__grid .solutions-icon { width: 31px; height: 31px; }
.solutions-why__grid h3 { min-height: 2.4em; margin: 10px 0 0; font-size: .92rem; line-height: 1.2; }
.solutions-why__grid p { margin: 7px 0 0; color: #5f7064; font-size: .78rem; line-height: 1.42; }
.solutions-inquiry { padding: 64px 0; }
.solutions-inquiry > img { object-position: center; }
.solutions-inquiry__wash { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgb(0 65 33 / 86%), rgb(0 76 39 / 75%)); }
.solutions-inquiry__wrap { display: grid; grid-template-columns: minmax(250px, .84fr) minmax(0, 1.16fr); gap: 54px; align-items: center; max-width: 1460px; }
.solutions-inquiry__copy { color: #fff; }
.solutions-inquiry__copy .solutions-eyebrow { color: #cefb82; }
.solutions-inquiry h2 { font-size: clamp(2rem, 3vw, 3.15rem); }
.solutions-inquiry__copy > p:not(.solutions-eyebrow) { margin: 18px 0 0; color: rgb(255 255 255 / 89%); font-size: 1rem; line-height: 1.68; }
.solutions-inquiry__form { padding: 30px; border-radius: 13px; background: rgb(255 255 255 / 94%); box-shadow: 0 18px 38px rgb(0 32 13 / 20%); }
.solutions-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.solutions-form-grid input, .solutions-form-grid select, .solutions-form-grid textarea { display: block; width: 100%; border: 1px solid #d4e3d3; border-radius: 7px; padding: 13px 15px; color: #164529; background: #fff; font: inherit; font-size: .88rem; line-height: 1.35; outline-color: #239042; }
.solutions-form-grid textarea { min-height: 116px; resize: vertical; }
.solutions-form-grid__message { grid-column: 1 / -1; }
.solutions-inquiry__form .solutions-button { margin-top: 13px; }
.solutions-honeypot { position: absolute; left: -9999px; overflow: hidden; width: 1px; height: 1px; }
.solutions-form-message { margin: 0 0 12px; border-radius: 7px; padding: 10px 12px; font-size: .78rem; line-height: 1.35; }
.solutions-form-message--success { color: #125928; background: #e5f7e5; }
.solutions-form-message--error { color: #9c3019; background: #fff0e9; }
@media (max-width: 1050px) { .solutions-overview__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .solution-detail__layout, .solutions-inquiry__wrap { gap: 34px; } .solution-points--four { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 19px; } .solutions-process__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 0; } .solutions-process__list li:nth-child(2) { border-right: 0; } .solutions-process__list li:nth-child(-n+2) { border-bottom: 1px solid #dce9db; } .solutions-why__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .solutions-hero { min-height: 470px; } .solutions-hero > img { object-position: 63% center; } .solutions-hero__wash { background: linear-gradient(90deg, rgb(2 56 30 / 85%), rgb(3 64 35 / 55%)); } .solutions-hero__content { padding-block: 68px; } .solutions-hero h1 { font-size: clamp(2.4rem, 11vw, 3.4rem); } .solutions-overview, .solution-detail, .solutions-process, .solutions-why, .solutions-inquiry { padding-block: 52px; } .solutions-overview__grid, .solution-detail__layout, .solutions-inquiry__wrap { grid-template-columns: 1fr; } .solution-overview-card__body { min-height: 110px; } .solution-detail__image, .solution-detail__image img { min-height: 280px; } .solution-crop-gallery { min-height: 320px; } .solution-detail--rice .solution-detail__copy { order: 1; } .solution-detail--rice .solution-detail__image { order: 2; } .solution-points { gap: 18px 12px; } .solution-points, .solution-points--four { grid-template-columns: repeat(2, minmax(0, 1fr)); } .solutions-process__list { grid-template-columns: 1fr; padding: 12px; } .solutions-process__list li, .solutions-process__list li:nth-child(2) { border-right: 0; border-bottom: 1px solid #dce9db; } .solutions-process__list li:last-child { border-bottom: 0; } .solutions-why__grid { grid-template-columns: 1fr; } .solutions-why__grid article { min-height: 0; } .solutions-inquiry__wrap { gap: 28px; } .solutions-inquiry__form { padding: 18px; } }
@media (max-width: 440px) { .solutions-button-row { display: grid; grid-template-columns: 1fr; } .solutions-button { width: 100%; } .solutions-overview__grid, .solution-points, .solution-points--four { grid-template-columns: 1fr; } .solution-detail__image, .solution-detail__image img { min-height: 235px; } .solutions-heading h2 { font-size: 1.8rem; } }
@media (max-width: 760px) { .solution-detail__copy { order: 2; max-width: none; } .solution-detail__image, .solution-crop-gallery { order: 1; } .solution-detail--rice .solution-detail__copy, .solution-detail[id="beekeeping-honey"] .solution-detail__copy { order: 2; } }
@media (max-width: 440px) { .solutions-form-grid { grid-template-columns: 1fr; } .solutions-inquiry__form { padding: 20px; } }
