.iphone-mockup{--phone-width:430px;--chrome-ref:var(--phone-width);--stage-width:calc(var(--phone-width) * 747 / 460);--stage-height:calc(var(--phone-width) * 1233 / 460);--phone-height:calc(var(--phone-width) * 958 / 460);--shadow-layer-left:calc(var(--phone-width) * 12 / 460);--shadow-layer-top:calc(var(--phone-width) * 7 / 460);--shadow-layer-width:calc(var(--phone-width) * 745 / 460);--shadow-layer-height:calc(var(--phone-width) * 1206 / 460);--phone-left:calc(var(--phone-width) * 6 / 460);--phone-top:calc(var(--phone-width) * 3 / 460);--frame-radius:calc(var(--chrome-ref) * 60 / 460);--screen-radius:calc(var(--chrome-ref) * 50 / 460);--bezel-pad:calc(var(--chrome-ref) * 16 / 460);--frame-border:max(2px, calc(var(--chrome-ref) * 3 / 460));--frame-shadow-near:calc(var(--phone-width) * 20 / 460) calc(var(--phone-width) * 20 / 460) calc(var(--phone-width) * 50 / 460) #00000059;--frame-shadow-far:calc(var(--phone-width) * 80 / 460) calc(var(--phone-width) * 80 / 460) calc(var(--phone-width) * 150 / 460) #00000040;justify-content:center;display:flex}.iphone-mockup--fluid{--chrome-ref:215px;--inner-width:calc(var(--phone-width) - 2 * var(--bezel-pad) - 2 * var(--frame-border));--phone-height:calc(var(--inner-width) / var(--screen-aspect) + 2 * var(--bezel-pad) + 2 * var(--frame-border));--stage-width:calc(var(--phone-width) * var(--ref-view-w) / 460);--stage-height:calc(var(--phone-width) * var(--ref-view-h) / 460);--phone-left:calc(var(--phone-width) * var(--frame-origin-x) / 460);--phone-top:calc(var(--phone-width) * var(--frame-origin-y) / 460)}.iphone-mockup__stage{width:var(--stage-width);height:var(--stage-height);position:relative;overflow:visible}.iphone-mockup--fluid .iphone-mockup__stage{left:calc((var(--stage-width) - var(--phone-width)) / 2 - var(--phone-left))}.iphone-mockup__shadows{left:var(--shadow-layer-left);top:var(--shadow-layer-top);width:var(--shadow-layer-width);height:var(--shadow-layer-height);pointer-events:none;position:absolute;overflow:visible}.iphone-mockup__shadows--fluid{width:100%;height:100%;inset:0}.iphone-mockup__phone{z-index:1;left:var(--phone-left);top:var(--phone-top);width:var(--phone-width);height:var(--phone-height);box-sizing:border-box;border:var(--frame-border) solid transparent;border-radius:var(--frame-radius);padding:var(--bezel-pad);box-shadow:var(--frame-shadow-near), var(--frame-shadow-far);background:linear-gradient(#000,#000) padding-box padding-box,linear-gradient(to bottom right,#ffffffbf 0%,#010101 100%) border-box;position:absolute}.iphone-mockup__screen{border-radius:var(--screen-radius);background:#000;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.iphone-mockup__screen:has(.iphone-mockup__status-bar){background:#fff}.iphone-mockup__screen-img{object-fit:cover;object-position:top center;flex:auto;width:100%;height:100%;min-height:0;display:block}.iphone-mockup__status-bar{z-index:2;height:calc(var(--chrome-ref) * 62 / 460);padding:calc(var(--chrome-ref) * 14 / 460) calc(var(--chrome-ref) * 28 / 460) 0;box-sizing:border-box;pointer-events:none;color:#000;flex:none;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:relative}.iphone-mockup__status-bar--light{color:#fff}.iphone-mockup__status-time{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;font-size:calc(var(--chrome-ref) * 17 / 460);letter-spacing:-.02em;padding-left:calc(var(--chrome-ref) * 4 / 460);justify-self:start;font-weight:600;line-height:1}.iphone-mockup__island{width:calc(var(--chrome-ref) * 126 / 460);height:calc(var(--chrome-ref) * 37 / 460);background:#000;border-radius:999px}.iphone-mockup__status-icons{justify-self:end;align-items:center;gap:calc(var(--chrome-ref) * 7 / 460);color:currentColor;display:flex}.iphone-mockup__status-signal{width:calc(var(--chrome-ref) * 18 / 460);height:calc(var(--chrome-ref) * 12 / 460);fill:currentColor}.iphone-mockup__status-wifi{width:calc(var(--chrome-ref) * 16 / 460);height:calc(var(--chrome-ref) * 12 / 460);fill:currentColor}.iphone-mockup__status-battery{width:calc(var(--chrome-ref) * 27 / 460);height:calc(var(--chrome-ref) * 13 / 460);fill:currentColor}
.nh.lg{--lg-text:#000;--lg-text-muted:#787878;color:var(--lg-text);background:#fff;overflow:clip}html:has(.lg){background:#fff}.lg .nh-header-wrap{z-index:2;position:relative}.lg .nh-site-name,.lg .nh-header button.nh-cta{color:var(--lg-text)}.lg-hero{z-index:1;background:0 0;flex-direction:column;align-items:stretch;padding:96px 40px 48px;display:flex;position:relative;overflow:visible}.lg:before{content:"";z-index:0;pointer-events:none;opacity:.0235;background-image:url(/case-studies/lettuce-grow/noise.png);background-position:0 0;background-size:409px 409px;position:fixed;inset:0}.lg-overview-title{display:none}.lg-intro{z-index:1;width:100%;max-width:958px;font-family:var(--font-soehne-buch), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.02em;text-align:center;text-wrap:pretty;color:var(--lg-text);margin:0 auto 92px;font-size:27px;font-weight:400;line-height:1.38;position:relative}.lg-intro-body{color:var(--lg-text-muted)}.lg-device-block{z-index:1;--devices-gap:88px;--devices-inline-pad:80px;--device-h:min(682px, 56vh, calc((100vw - var(--devices-inline-pad) - var(--devices-gap)) / 1.8));--pdp-screen-aspect:4 / 3;--phone-frame-width:calc(var(--device-h) * 460 / 958);--matched-chrome:var(--phone-frame-width);--matched-bezel:calc(var(--matched-chrome) * 16 / 460);--matched-border:max(2px, calc(var(--matched-chrome) * 3 / 460));--pdp-frame-width:calc((var(--device-h) - 2 * var(--matched-bezel) - 2 * var(--matched-border)) * var(--pdp-screen-aspect) + 2 * var(--matched-bezel) + 2 * var(--matched-border));--duo-width:calc(var(--pdp-frame-width) + var(--devices-gap) + var(--phone-frame-width));--corner-shadow-w:calc(var(--phone-frame-width) * 745 / 460);--corner-shadow-h:calc(var(--phone-frame-width) * 1206 / 460);width:100%;position:relative}.lg-devices{justify-content:center;align-items:flex-start;gap:var(--devices-gap);width:100%;display:flex;overflow:visible}.lg-pdp-wrap{width:var(--pdp-frame-width);--frame-top:calc(var(--phone-frame-width) * 3 / 460);flex-direction:column;flex-shrink:0;align-items:center;margin:0;display:flex;position:relative}.lg-phone-wrap{width:var(--phone-frame-width);--frame-top:calc(var(--phone-frame-width) * 3 / 460);flex-direction:column;flex-shrink:0;align-items:center;margin:0;display:flex;position:relative}.lg-device-caption{top:calc(var(--frame-top) - 12px);z-index:2;box-sizing:border-box;font-family:var(--font-soehne-buch), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.01em;text-align:center;text-wrap:pretty;color:var(--lg-text-muted);margin:0;padding:0;font-size:14px;font-weight:400;line-height:1.4;position:absolute;left:0;right:0;transform:translateY(-100%)}.lg-pdp-phone.iphone-mockup,.lg-phone.iphone-mockup{z-index:1;width:var(--phone-width);flex-shrink:0;position:relative;overflow:visible}.lg-devices--hero .lg-phone .iphone-mockup__screen-img{object-position:bottom center}.lg-pdp-phone.iphone-mockup{--chrome-ref:var(--phone-frame-width);--phone-height:var(--device-h);--stage-width:calc(var(--phone-width) + var(--phone-frame-width) * (747 - 460) / 460);--stage-height:calc(var(--phone-height) + var(--phone-frame-width) * (1233 - 958) / 460);--phone-left:calc(var(--phone-frame-width) * 6 / 460);--phone-top:calc(var(--phone-frame-width) * 3 / 460);--frame-shadow-near:calc(var(--phone-frame-width) * 20 / 460) calc(var(--phone-frame-width) * 20 / 460) calc(var(--phone-frame-width) * 50 / 460) #00000059;--frame-shadow-far:calc(var(--phone-frame-width) * 80 / 460) calc(var(--phone-frame-width) * 80 / 460) calc(var(--phone-frame-width) * 150 / 460) #00000040}.lg-devices--collection,.lg-devices--credits-starter{--collection-h:calc((var(--pdp-frame-width) - 2 * var(--matched-bezel) - 2 * var(--matched-border)) * 2072 / 2880 + 2 * var(--matched-bezel) + 2 * var(--matched-border));--phone-frame-width:calc(var(--collection-h) * 460 / 958);--corner-shadow-w:calc(var(--phone-frame-width) * 745 / 460);--corner-shadow-h:calc(var(--phone-frame-width) * 1206 / 460)}.lg-pdp-phone--collection.iphone-mockup,.lg-pdp-phone--credits-starter.iphone-mockup{--phone-height:var(--collection-h)}.lg-devices--feature{align-items:flex-start}.lg-feature-tablet.lg-pdp-wrap{z-index:1;position:relative;overflow:visible}.lg-feature-annots{width:var(--phone-frame-width);height:calc(var(--frame-top) + var(--collection-h));--frame-top:calc(var(--phone-frame-width) * 3 / 460);flex-shrink:0;margin:0;position:relative}.lg-feature-annot{left:0;right:0;top:calc(var(--frame-top) + var(--card-y));z-index:4;position:absolute;transform:translateY(-.625em)}.lg-feature-annot__title{font-family:var(--font-louize), Georgia, serif;letter-spacing:-.015em;color:var(--lg-text);margin:0 0 6px;font-size:20px;font-weight:400;line-height:1.25;position:relative}.lg-feature-annot__curve{width:calc(var(--devices-gap) - 8px);pointer-events:none;position:absolute;right:calc(100% + 8px);overflow:visible}.lg-feature-annot__leader{width:calc(var(--devices-gap) - 8px);border-top:1px solid color-mix(in srgb, var(--lg-text) 28%, transparent);pointer-events:none;height:0;position:absolute;top:50%;right:calc(100% + 8px)}.lg-feature-annot--curve-down .lg-feature-annot__curve{height:abs(calc(var(--pin-y) - var(--card-y)));top:50%}.lg-feature-annot--curve-up .lg-feature-annot__curve{height:abs(calc(var(--pin-y) - var(--card-y)));bottom:50%}.lg-feature-annot--curve-soft .lg-feature-annot__curve{height:20px;top:calc(50% - 10px)}.lg-feature-annot__curve-path{stroke:color-mix(in srgb, var(--lg-text) 28%, transparent);stroke-width:1px}.lg-feature-annot__body{font-family:var(--font-soehne-buch), ui-sans-serif, system-ui, sans-serif;letter-spacing:0;text-wrap:pretty;color:var(--lg-text);margin:0;font-size:15px;font-weight:400;line-height:1.45}.lg-feature-tablet__frame{width:var(--pdp-frame-width);--frame-top:calc(var(--phone-frame-width) * 3 / 460);position:relative}.lg-feature-hotspots__pins,.lg-feature-hotspots__card{display:none}.lg-credits-duos{--credits-gap:var(--devices-gap);--collection-h:calc((var(--pdp-frame-width) - 2 * var(--matched-bezel) - 2 * var(--matched-border)) * 2072 / 2880 + 2 * var(--matched-bezel) + 2 * var(--matched-border));--phone-frame-width:calc(var(--collection-h) * 460 / 958);--corner-shadow-w:calc(var(--phone-frame-width) * 745 / 460);--corner-shadow-h:calc(var(--phone-frame-width) * 1206 / 460);flex-direction:column;align-items:stretch;gap:0;width:100%;display:flex}.lg-credits-duos .lg-devices+.lg-devices,.lg-credits-duos .lg-devices+.lg-phone-strip{margin-top:calc(var(--credits-gap) - var(--phone-frame-width) * 275 / 460)}.lg-credits-duos .lg-phone-strip+.lg-devices{margin-top:calc(var(--credits-gap) + 1.4em + 12px)}.lg-phone-strip{--strip-phone-h:calc(var(--phone-frame-width) * 958 / 460);gap:var(--credits-gap);width:min(100%, var(--duo-width));grid-template-columns:repeat(3,minmax(0,1fr));margin-left:auto;margin-right:auto;display:grid;overflow:visible}.lg-phone-strip__item{z-index:1;flex-direction:column;align-items:stretch;gap:12px;min-width:0;margin:0;display:flex;position:relative;container:strip-item/inline-size}.lg-phone-strip__caption{font-family:var(--font-soehne-buch), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.01em;text-align:center;text-wrap:balance;color:var(--lg-text-muted);margin:0;font-size:14px;font-weight:400;line-height:1.3}.lg-phone-strip__phone.iphone-mockup{--strip-phone-width:100cqi;--phone-width:var(--strip-phone-width);width:var(--strip-phone-width);height:calc(var(--strip-phone-width) * 958 / 460);flex-shrink:0;display:block;position:relative;overflow:visible}.lg-phone-strip__phone .iphone-mockup__stage{top:calc(-1 * var(--phone-top));left:calc(-1 * var(--phone-left));position:absolute}.lg-pdp-phone .iphone-mockup__shadows--tr,.lg-pdp-phone .iphone-mockup__shadows--bl{width:var(--corner-shadow-w);height:var(--corner-shadow-h);top:calc(var(--phone-top) + var(--phone-frame-width) * (7 - 3) / 460)}.lg-pdp-phone .iphone-mockup__shadows--tr{left:calc(var(--phone-left) + var(--phone-width) - var(--phone-frame-width) + var(--phone-frame-width) * (12 - 6) / 460)}.lg-pdp-phone .iphone-mockup__shadows--bl{left:calc(var(--phone-left) + var(--phone-frame-width) * (12 - 6) / 460)}.lg-pdp-phone .iphone-mockup__stage,.lg-phone .iphone-mockup__stage{left:calc(-1 * var(--phone-left))}.lg-below{z-index:1;width:100%;position:relative}.lg-devices--storefront-hero{--storefront-h:calc((var(--pdp-frame-width) - 2 * var(--matched-bezel) - 2 * var(--matched-border)) * 2160 / 2880 + 2 * var(--matched-bezel) + 2 * var(--matched-border));--phone-frame-width:calc(var(--storefront-h) * 460 / 958);--corner-shadow-w:calc(var(--phone-frame-width) * 745 / 460);--corner-shadow-h:calc(var(--phone-frame-width) * 1206 / 460)}.lg-pdp-phone--storefront-hero.iphone-mockup{--phone-height:var(--storefront-h)}.lg-devices--storefront-hero .lg-pdp-phone .iphone-mockup__screen-img{object-fit:cover;object-position:center center;flex:none;width:110%;max-width:none;height:110%;margin:0;position:absolute;bottom:0;left:-5%}.lg-project{z-index:1;width:100%;max-width:632px;margin:-88px auto 100px;position:relative}.lg-project-title{font-family:var(--font-louize), Georgia, serif;letter-spacing:-.02em;text-transform:none;color:var(--lg-text);margin:0 0 16px;font-size:32px;font-weight:400;line-height:1.2}.lg-project-body{font-family:var(--font-soehne-buch), ui-sans-serif, system-ui, sans-serif;letter-spacing:0;text-align:left;text-wrap:pretty;color:var(--lg-text);margin:0;font-size:18px;font-weight:400;line-height:1.7}.lg-project-body+.lg-project-body,.lg-project-list-block{margin-top:1.2em}.lg-project-list-block .lg-project-body{margin:0}.lg-project-list{margin:.6em 0 0;padding-left:1.25em;list-style-type:disc}.lg-project-list-item{font-family:var(--font-soehne-buch), ui-sans-serif, system-ui, sans-serif;letter-spacing:0;text-wrap:pretty;color:var(--lg-text);font-size:18px;font-weight:400;line-height:1.7}.lg-project-list-item strong{font-weight:600}.lg-project-list-item+.lg-project-list-item{margin-top:.5em}.lg-project-body+.lg-project-list-block,.lg-project-list-block+.lg-project-body{margin-top:1.2em}.lg-scroll-space{height:0}.lg-footer{z-index:1;box-sizing:border-box;justify-content:flex-start;padding:8px 40px 72px;display:flex;position:relative}.lg-footer button{all:unset;cursor:pointer;font-family:var(--font-soehne-buch), ui-sans-serif, system-ui, sans-serif;color:var(--lg-text-muted);text-underline-offset:2px;font-size:14px;font-weight:400;-webkit-text-decoration:underline #0003;text-decoration:underline #0003}.lg-footer button:active{opacity:.6}@media (max-width:900px){.lg-hero{padding:64px 20px 48px;overflow-x:clip}.lg-footer{padding:4px 20px 48px}.lg-overview-title{z-index:1;width:100%;max-width:none;font-family:var(--font-louize), Georgia, serif;letter-spacing:-.02em;text-align:left;color:var(--lg-text);margin:0 0 12px;font-size:26px;font-weight:400;line-height:1.2;display:block;position:relative}.lg-intro{letter-spacing:0;text-align:left;max-width:none;margin:0 0 40px;font-size:17px;line-height:1.7}.lg-intro-body{color:var(--lg-text)}.lg-device-block{--devices-inline-pad:40px;--device-h:min(360px, calc((100vw - 40px) / 1.4))}.lg-devices{flex-direction:column;align-items:center;gap:40px}.lg-pdp-phone.iphone-mockup{height:var(--phone-height)}.lg-pdp-phone .iphone-mockup__stage{top:calc(-1 * var(--phone-top));left:calc(-1 * var(--phone-left));position:absolute}.lg-devices--bleed-left,.lg-devices--bleed-right{--pdp-frame-width:calc((100vw - 40px) * 1.14);width:100%;max-width:none;overflow:visible}.lg-devices--bleed-left{align-items:flex-end}.lg-devices--bleed-right{align-items:flex-start}.lg-devices--hero{--device-h:calc(var(--pdp-frame-width) * .76);justify-content:flex-start}.lg-devices--hero .lg-phone-wrap{display:none}.lg-devices--bleed-left .lg-pdp-wrap,.lg-devices--bleed-right .lg-pdp-wrap{max-width:none;margin-left:0;margin-right:0}.lg-devices--bleed-left .lg-feature-annots,.lg-devices--bleed-right .lg-feature-annots,.lg-devices--bleed-left .lg-phone-wrap,.lg-devices--bleed-right .lg-phone-wrap{align-self:center}.lg-devices--storefront-hero .lg-phone-wrap{--pair-phone-width:100cqi;flex-direction:column;align-items:stretch;width:calc(78vw - 31.2px);display:flex;container-type:inline-size}.lg-devices--storefront-hero .lg-phone.iphone-mockup{width:var(--pair-phone-width);height:calc(var(--pair-phone-width) * 958 / 460);display:block;position:relative;overflow:visible}.lg-devices--storefront-hero .lg-phone .iphone-mockup__stage{top:calc(-1 * var(--phone-top));left:calc(-1 * var(--phone-left));position:absolute}.lg-devices--storefront-hero .lg-phone-wrap .lg-device-caption{text-align:center;order:-1;margin:0 0 12px;position:static;top:auto;left:auto;right:auto;transform:none}.lg-pdp-wrap{max-width:100%}.lg-project{margin:40px auto}.lg-project-title{font-size:26px}.lg-project-body,.lg-project-list-item{font-size:17px}.lg-device-caption{font-size:13px}.lg-phone-strip{grid-template-columns:repeat(3,minmax(0,1fr));place-items:end stretch;gap:10px;width:calc(100vw - 40px);margin-top:40px}.lg-credits-duos .lg-devices+.lg-phone-strip,.lg-credits-duos .lg-phone-strip+.lg-devices{margin-top:40px}.lg-phone-strip__item{justify-content:flex-end;gap:8px;width:100%}.lg-phone-strip__caption{font-size:11px;line-height:1.25}.lg-devices--feature{flex-direction:column}.lg-devices--feature.lg-devices--bleed-left,.lg-devices--feature.lg-devices--bleed-right{align-items:flex-end}.lg-devices--feature .lg-feature-tablet{width:var(--pdp-frame-width);flex-direction:column;align-items:flex-end;max-width:none;display:flex}.lg-devices--feature .lg-device-caption{text-align:center;align-self:center;width:calc(100vw - 40px);max-width:calc(100vw - 40px);margin:0 0 12px;padding:0;position:static;top:auto;left:auto;right:auto;transform:none}.lg-feature-annots{display:none}.lg-feature-tablet__frame{width:var(--pdp-frame-width);--frame-top:calc(var(--phone-frame-width) * 3 / 460);position:relative}.lg-feature-hotspots__pins{z-index:5;pointer-events:none;display:block;position:absolute;inset:0}.lg-feature-hotspots__pin{top:calc(var(--frame-top) + var(--collection-h) * var(--pin-y));left:calc(var(--pdp-frame-width) * var(--pin-x));box-sizing:border-box;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;width:22px;height:22px;margin:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.lg-feature-hotspots__pin:before{content:"";background:#0000001f;border-radius:999px;animation:4.8s ease-out infinite lg-hotspot-pulse;position:absolute;inset:0}.lg-feature-hotspots__pin:after{content:"";background:#fff;border-radius:999px;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000024}.lg-feature-hotspots__pin.is-active:before{background:#0000001f;animation:none;transform:scale(1)}.lg-feature-hotspots__pin.is-active:after{background:#fff;box-shadow:0 0 0 1px #00000038}@keyframes lg-hotspot-pulse{0%{opacity:.4;transform:scale(.65)}45%{opacity:0;transform:scale(1)}to{opacity:0;transform:scale(1)}}.lg-feature-hotspots__card{left:calc(var(--pdp-frame-width) - 100vw + 20px);top:auto;bottom:calc(var(--matched-bezel) + var(--matched-border) + 1px);z-index:6;box-sizing:border-box;width:calc(var(--pdp-frame-width) * .7);-webkit-backdrop-filter:blur(10px);background:#fffffffa;border-top:1px solid #00000014;border-bottom:0;border-left:0;border-right:1px solid #00000014;border-radius:0 12px 0 0;max-width:calc(82vw - 32.8px);height:auto;padding:14px 12px 12px;display:block;position:absolute;transform:none;box-shadow:0 8px 28px #00000029}.lg-feature-hotspots__close{color:#0000008c;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;width:28px;height:28px;margin:0;padding:0;font-size:22px;line-height:1;position:absolute;top:6px;right:6px}.lg-feature-hotspots__title{font-family:var(--font-louize), Georgia, serif;letter-spacing:-.015em;color:var(--lg-text);margin:0 0 6px;padding-right:20px;font-size:16px;font-weight:400;line-height:1.25}.lg-feature-hotspots__body{font-family:var(--font-soehne-buch), ui-sans-serif, system-ui, sans-serif;text-wrap:pretty;color:var(--lg-text);margin:0;font-size:13px;font-weight:400;line-height:1.4}.lg-devices--storefront-hero .lg-phone-wrap .lg-device-caption,.lg-phone-strip__caption,.lg-devices--storefront-hero .lg-pdp-wrap .lg-device-caption{text-align:center}}
