.premium-hero { padding: 130px 40px 0; background: radial-gradient(ellipse at 80% 40%, #2e4b3470, transparent 55%), #10251c; }
.premium-hero-grid { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 70px; min-height: 620px; }
.premium-intro { position: relative; z-index: 2; padding: 20px 0 30px; }
.premium-intro .eyebrow { color: #b8cc9e; font-size: 10px; letter-spacing: 2px; margin: 0 0 30px; }
.premium-hero .premium-intro h1 { font-size: 82px; line-height: 1.02; letter-spacing: -4px; margin: 0 0 28px; font-weight: 500; }
.premium-hero .premium-intro h1 em { color: #d1ed80; background: none; -webkit-text-fill-color: currentColor; font-style: normal; }
.premium-hero-lead { color: #e6eddf; font-size: 22px; line-height: 1.5; letter-spacing: -.5px; margin: 0 0 18px; }
.premium-hero-copy { max-width: 430px; margin: 0 0 32px; color: #b4c3ac; font-size: 14px; line-height: 1.85; }
.premium-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.premium-access { margin: 20px 0 0; color: #a4b49b; font-size: 10px; letter-spacing: .3px; }
.premium-phone { position: relative; isolation: isolate; margin: 0; text-align: center; padding: 0 0 35px; }
.premium-phone .device-frame { width: 280px; max-width: 80%; padding: 7px; border-radius: 36px; border-color: #9bab8660; background: #102219; box-shadow: 0 35px 85px #030e0a8c, 0 0 0 5px #d8e7ad08; transform: rotate(-4deg); }
.premium-phone .device-frame img { display: block; border-radius: 28px; }
.phone-halo { position: absolute; inset: 0 -15% 0; z-index: -1; background: radial-gradient(ellipse, #b4ce6a23, transparent 67%); }
.phone-contours { position: absolute; inset: 14% -5%; z-index: -1; transform: rotate(-15deg); }
.phone-contours span { position: absolute; inset: 0; border: 1px solid #b8d47c24; border-radius: 28% 42% 32% 45%; }
.phone-contours span:nth-child(2) { inset: -35px; }
.phone-contours span:nth-child(3) { inset: -70px; }
.phone-index-label { position: absolute; top: 48%; right: -10px; padding: 14px 18px; text-align: left; border: 1px solid #a9bf7950; border-radius: 8px; background: #1b3428f0; color: #dfedc5; box-shadow: 0 15px 40px #04100930; font-size: 10px; letter-spacing: 1px; }
.phone-index-label small { display: block; margin-top: 6px; color: #bacaaa; font-size: 10px; letter-spacing: 0; }
.premium-phone figcaption { margin: 28px 0 0; color: #a8ba99; font-size: 10px; }
.premium-hero-bottom { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 24px 0; margin-top: 30px; border-top: 1px solid #b1cb7e25; color: #a7b99a; font-size: 9px; letter-spacing: 1.6px; }
.premium-hero-bottom a { color: #dde9ce; font-size: 11px; letter-spacing: 0; }
.site-ready .premium-intro > :is(.eyebrow, h1, .premium-hero-lead, .premium-hero-copy, .premium-access) { animation: premium-arrive 700ms ease-out both; }
.site-ready .premium-phone { animation: premium-arrive 950ms cubic-bezier(.2,.7,.2,1) both; }
.demo-section { padding: 78px 40px 0; color: #f0f4e7; background: #14291f; }
.demo-heading { display: grid; grid-template-columns: 1.25fr 1fr; align-items: end; gap: 70px; margin-bottom: 44px; }
.demo-heading h2 { font-size: 49px; font-weight: 500; line-height: 1.13; margin: 0; }
.demo-heading h2 em { color: #cbe78b; font-style: normal; }
.demo-heading .eyebrow { color: #a7bd86; font-size: 9px; margin-bottom: 20px; }
.demo-heading > p { max-width: 360px; color: #b4c3a8; font-size: 13px; line-height: 1.9; margin: 0 0 4px; }
.demo-section .experience-mount { max-width: 1080px; scroll-margin-top: 115px; }
.demo-endnote { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 28px 0 38px; color: #a3b68e; font-size: 8px; letter-spacing: 1.4px; }
.demo-endnote a { font-size: 11px; letter-spacing: 0; color: #d1e0b9; }
.soil-section { background: #e9eedf; overflow: hidden; }
.soil-layout { display: grid; grid-template-columns: .92fr 1.08fr; gap: 65px; align-items: center; }
.soil-copy h2 { font-size: 49px; font-weight: 500; line-height: 1.12; letter-spacing: -2px; }
.soil-copy h2 em { color: #63833d; font-style: normal; }
.soil-copy .section-lead { font-size: 14px; line-height: 1.9; }
.soil-explanation { border-top: 1px solid #c9d3b9; padding-top: 23px; margin-top: 30px; }
.soil-explanation > span { font-size: 9px; letter-spacing: 1.4px; color: #587443; }
.soil-explanation p { font-size: 12px; color: #526648; line-height: 1.8; margin: 11px 0 23px; max-width: 370px; }
.soil-rain-control { display: block; }
.soil-rain-control > span:first-child { display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: #3b5133; }
.soil-rain-control output { font-size: 21px; font-weight: 600; color: #34582d; }
.soil-rain-control input { display: block; width: 100%; min-height: 44px; cursor: pointer; accent-color: #54783a; margin: 8px 0 0; }
.soil-range-labels { display: flex; justify-content: space-between; color: #607252; }
.soil-range-labels small { font-size: 10px; }
.soil-disclaimer { font-size: 10px; line-height: 1.75; color: #607252; margin: 18px 0 22px; max-width: 400px; }
.soil-app-link { display: inline-flex; gap: 22px; color: #34522e; font-size: 12px; border-bottom: 1px solid #93aa77; padding-bottom: 6px; }
.soil-figure { min-width: 0; margin: 0; border: 1px solid #c1cfad; background: radial-gradient(ellipse at 50% 30%, #37513a, #1c3225 70%); border-radius: 16px; color: #dce6ce; box-shadow: 0 30px 60px #1d352215; overflow: hidden; }
.soil-scene-top { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 24px 24px 0; font-size: 8px; letter-spacing: 1.5px; color: #b5c99e; }
.soil-scene-top span:last-child { font-size: 10px; letter-spacing: 0; color: #bde1db; }
.soil-figure svg { width: 100%; height: auto; display: block; }
.soil-water-layer { transition: opacity 700ms ease; }
.soil-layer-readings { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; padding: 0 24px; }
.soil-layer-readings > div { border-top: 1px solid #a3bf7b40; padding-top: 13px; }
.soil-layer-readings span { font-size: 9px; color: #adbf9b; display: block; margin-bottom: 6px; }
.soil-layer-readings strong { font-size: 10px; font-weight: 500; color: #dde9cf; line-height: 1.6; display: block; }
.soil-figure figcaption { font-size: 9px; line-height: 1.7; color: #adbf9b; padding: 22px 24px; }
.soil-rain { opacity: var(--rain-opacity, .6); }
.soil-figure.is-in-view .soil-rain { animation: soil-rainfall 1.8s linear 2; }
.soil-figure[data-rain="0"] .soil-rain { animation: none; opacity: 0; }
.promise-section { background: #f6f7ef; }
.promise-list { display: grid; grid-template-rows: repeat(4, 1fr); align-self: stretch; }
.promise-list article { align-content: center; }
.premium-hero ~ .promise-section .promise-mark small { color: #61764e; }
@keyframes premium-arrive { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
@keyframes soil-rainfall { from { transform: translateY(-8px); } to { transform: translateY(12px); } }
@media (max-width: 1100px) {
  .premium-hero { padding-top: 130px; }
  .premium-hero-grid { gap: 25px; min-height: 620px; }
  .premium-hero .premium-intro h1 { font-size: 68px; }
  .premium-phone .device-frame { width: 250px; }
  .phone-index-label { right: -5px; top: 55%; font-size: 9px; padding: 11px 12px; }
  .soil-layout { gap: 35px; }
  .soil-copy h2 { font-size: 42px; }
}
@media (max-width: 760px) {
  .premium-hero { padding: 120px 26px 0; }
  .premium-hero-grid { grid-template-columns: 1fr; gap: 0; min-height: 0; text-align: center; }
  .premium-intro { display: contents; }
  .premium-intro > .eyebrow { order: 0; font-size: 8px; margin-bottom: 23px; }
  .premium-hero .premium-intro h1 { order: 1; font-size: 62px; margin: 0 0 25px; letter-spacing: -3px; }
  .premium-actions { order: 2; justify-content: center; margin-bottom: 40px; }
  .premium-phone { order: 3; padding-bottom: 0; margin-bottom: 34px; }
  .premium-phone .device-frame { width: 230px; }
  .phone-index-label { right: 8%; top: 54%; }
  .premium-hero-lead { order: 4; font-size: 22px; margin-bottom: 14px; }
  .premium-hero-copy { order: 5; margin: 0 auto 15px; font-size: 13px; }
  .premium-access { order: 6; margin-top: 5px; }
  .premium-hero-bottom { margin-top: 34px; }
  .demo-section { padding: 72px 24px 0; }
  .demo-heading { grid-template-columns: 1fr; gap: 22px; margin-bottom: 30px; }
  .demo-heading h2 { font-size: 39px; }
  .demo-heading > p { max-width: 450px; }
  .demo-endnote { align-items: flex-start; flex-direction: column; gap: 12px; }
  .soil-layout { grid-template-columns: 1fr; gap: 35px; }
  .soil-copy h2 { font-size: 42px; }
  .soil-explanation p, .soil-disclaimer { max-width: 100%; }
  .soil-figure { max-width: 560px; width: 100%; margin: 0 auto; }
}
@media (max-width: 560px) {
  .premium-hero { padding: 112px 22px 0; }
  .premium-hero .premium-intro h1 { font-size: 53px; letter-spacing: -2.7px; margin-bottom: 23px; }
  .premium-intro > .eyebrow { font-size: 7px; letter-spacing: 1.1px; }
  .premium-actions { gap: 9px; margin-bottom: 35px; }
  .premium-phone .device-frame { width: 215px; }
  .phone-index-label { right: 0; top: 60%; font-size: 8px; }
  .phone-index-label small { font-size: 8px; }
  .phone-contours { inset: 20% 5%; }
  .premium-phone figcaption { font-size: 9px; }
  .premium-hero-bottom { font-size: 7px; letter-spacing: .7px; }
  .premium-hero-bottom a { font-size: 9px; }
  .demo-section { padding-right: 18px; padding-left: 18px; }
  .demo-heading > p { font-size: 12px; }
  .soil-scene-top { padding: 20px 15px 0; font-size: 7px; letter-spacing: .6px; }
  .soil-scene-top span:last-child { font-size: 9px; }
  .soil-layer-readings { padding: 0 15px; gap: 8px; }
  .soil-layer-readings span { font-size: 8px; }
  .soil-layer-readings strong { font-size: 9px; }
  .soil-figure figcaption { padding: 20px 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-ready .premium-intro > :is(.eyebrow, h1, .premium-hero-lead, .premium-hero-copy, .premium-access), .site-ready .premium-phone, .soil-figure.is-in-view .soil-rain { animation: none !important; }
  .soil-water-layer { transition: none; }
}

.store-downloads { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 10px; margin: 0 0 20px; padding: 12px 0 0; }
.store-platform { display: flex; flex-direction: column; align-items: center; }
.official-store-link, .official-google-badge { display: flex; align-items: center; justify-content: center; height: 64px; }
.official-store-link { padding: 8px 0; }
.official-store-link img { display: block; width: 144px; height: 48px; }
.official-google-badge img { display: block; width: 164px; height: 64px; object-fit: contain; }
.store-platform > span:last-child { color: #c4d1b7; font-size: 10px; margin-top: 9px; }
.premium-actions { align-items: center; gap: 18px; }
.premium-demo-link { display: inline-flex; align-items: center; gap: 26px; padding: 8px 0; border-bottom: 1px solid #a9bf6d70; font-size: 12px; color: #e3efd0; }
.premium-actions > span { font-size: 10px; color: #a9bd96; }
.premium-access { margin-top: 16px; }
.final-download-link { display: inline-block; margin-top: 12px; font-size: 12px; color: #c5dc9e; text-decoration: underline; text-underline-offset: 5px; }
.farm-preview { max-width: 430px; margin-top: 28px; padding: 18px 20px 0; border: 1px solid #ccd7ba; border-radius: 10px; background: #fffef7; box-shadow: 0 14px 30px #243a1b08; }
.farm-preview-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: 8px; letter-spacing: 1px; color: #647a4d; padding-bottom: 12px; }
.farm-preview-heading b { background: #eaf0de; padding: 5px 9px; border-radius: 4px; font-size: 10px; letter-spacing: 0; }
.farm-preview-row { display: flex; align-items: center; gap: 13px; padding: 10px 0; border-top: 1px solid #e2e8d8; }
.farm-crop { width: 30px; height: 30px; border-radius: 6px; background: repeating-linear-gradient(125deg, #93ac69 0 3px, #b5c88e 3px 6px); }
.crop-corn { background: repeating-linear-gradient(125deg, #5b7950 0 3px, #8cab77 3px 6px); }
.crop-rape { background: repeating-linear-gradient(125deg, #c5b55f 0 3px, #e0d18d 3px 6px); }
.farm-preview-row > span:nth-child(2) { display: flex; flex-direction: column; gap: 3px; }
.farm-preview-row b, .farm-preview-row strong { font-size: 12px; font-weight: 600; }
.farm-preview-row small { color: #657b52; font-size: 9px; font-weight: 400; }
.farm-preview-row strong { margin-left: auto; }
.farm-preview-total { display: flex; justify-content: space-between; padding: 13px 0; border-top: 1px solid #d7e0ca; font-size: 9px; color: #61764e; }
.farm-preview-total strong { font-size: 12px; color: #2c482c; }
.capability-card { min-height: 0; padding: 25px; }
.capability-index { margin-bottom: 22px; }
.capability-card h3 { font-size: 21px; }
.capability-card p { font-size: 12px; line-height: 1.75; margin-bottom: 0; }
.capability-note { order: 2; font-size: 9px; padding-top: 4px; }
.feature-visual { order: 1; display: flex; align-items: center; width: 100%; height: 78px; flex-shrink: 0; margin: 21px 0 17px; color: #789052; }
.capability-card:first-child .feature-visual { color: #c4dd90; }
.feature-visual i { font-style: normal; }
.file-chip { padding: 9px 13px; border: 1px solid #c6d4b1; border-radius: 6px; background: #e6edda; color: #617849; font-size: 8px; line-height: 1.6; }
.file-chip b { font-size: 14px; font-weight: 600; }
.file-arrow { font-size: 22px; margin: 0 13px; }
.import-parcels { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; width: 67px; transform: rotate(-9deg); }
.import-parcels i { display: block; height: 25px; border: 1px solid #94ab75; background: #cad9b5; border-radius: 4px; }
.import-parcels i:last-child { grid-column: 1 / -1; height: 19px; background: #a9bf8c; }
.export-visual { align-items: stretch; flex-direction: column; justify-content: center; gap: 11px; }
.export-visual > span { font-size: 11px; color: #627b4e; }
.export-visual > span b { font-weight: 400; margin-right: 8px; }
.export-visual > div { display: flex; gap: 7px; }
.export-visual i { padding: 7px 12px; background: #e4ecd8; border: 1px solid #c3d1ad; border-radius: 5px; font-size: 10px; }
.history-visual { gap: 10px; align-items: stretch; }
.history-visual > div { flex: 1; display: flex; flex-direction: column; gap: 6px; }
.history-visual span, .history-visual small { font-size: 8px; color: #6d8159; }
.history-visual i { flex: 1; border-radius: 4px; background: repeating-linear-gradient(135deg, #bacb93 0 4px, #d4deb9 4px 8px); }
.history-visual > div:nth-child(2) i { background: repeating-linear-gradient(135deg, #bdb45c 0 4px, #dad197 4px 8px); }
.history-visual > div:nth-child(3) i { background: repeating-linear-gradient(135deg, #7c9b69 0 4px, #aec49e 4px 8px); }
.satellite-visual { max-width: 100%; }
.planning-visual { flex-direction: column; justify-content: center; align-items: flex-start; gap: 9px; }
.planning-visual span { font-size: 10px; color: #647c50; }
.planning-visual i { margin-right: 8px; color: #597d38; }
.faq-contact { margin-top: 26px; padding: 22px; border: 1px solid #cdd8bd; border-radius: 9px; background: #e5ebdb; max-width: 350px; }
.faq-contact > span { display: block; font-size: 13px; color: #304a2c; }
.faq-contact p { color: #627652; font-size: 11px; line-height: 1.85; margin: 10px 0 18px; }
.faq-contact a { display: flex; justify-content: space-between; font-size: 12px; color: #3c5e30; }
.site-ready .phone-contours { animation: contour-enter 2.6s cubic-bezier(.2,.6,.2,1) both; }
.promise-intro.is-visible .farm-preview-row { animation: row-enter 700ms ease-out both; }
.promise-intro.is-visible .farm-preview-row:nth-child(3) { animation-delay: 140ms; }
.promise-intro.is-visible .farm-preview-row:nth-child(4) { animation-delay: 280ms; }
.capability-card.is-visible .feature-draw { stroke-dasharray: 600; animation: boundary-draw 2.2s ease-out both; }
.capability-card.is-visible .feature-point { animation: point-enter 1.2s ease-out both; }
.capability-card.is-visible .import-parcels i { animation: row-enter 800ms ease-out both; }
.capability-card.is-visible .import-parcels i:nth-child(2) { animation-delay: 130ms; }
.capability-card.is-visible .import-parcels i:nth-child(3) { animation-delay: 260ms; }
.capability-card.is-visible .export-visual i { animation: row-enter 850ms ease-out both; }
.capability-card.is-visible .export-visual i:last-child { animation-delay: 150ms; }
.capability-card.is-visible .history-visual i { transform-origin: bottom; animation: crop-enter 1.3s ease-out both; }
.capability-card.is-visible .feature-scan { animation: scan-field 2.8s ease-in-out both; }
.capability-card.is-visible .planning-visual span { animation: row-enter 750ms ease-out both; }
.capability-card.is-visible .planning-visual span:nth-child(2) { animation-delay: 140ms; }
.capability-card.is-visible .planning-visual span:nth-child(3) { animation-delay: 280ms; }
.workflow-steps > li::after { position: absolute; left: 0; top: -1px; height: 2px; width: 100%; content: ""; background: #c4dd83; transform: scaleX(0); transform-origin: left; }
.workflow-steps > li.is-visible::after { animation: workflow-trace 1.1s ease-out both; animation-delay: var(--reveal-delay, 0ms); }
@keyframes contour-enter { from { opacity: 0; transform: rotate(-20deg) scale(.85); } to { opacity: 1; transform: rotate(-15deg) scale(1); } }
@keyframes row-enter { from { opacity: 0; transform: translateX(-9px); } to { opacity: 1; transform: none; } }
@keyframes boundary-draw { from { stroke-dashoffset: 600; } to { stroke-dashoffset: 0; } }
@keyframes point-enter { from { opacity: 0; } to { opacity: 1; } }
@keyframes crop-enter { from { transform: scaleY(.2); opacity: .2; } to { transform: scaleY(1); opacity: 1; } }
@keyframes scan-field { 0% { opacity: 0; transform: translateY(-40px); } 25% { opacity: 1; } 85% { opacity: 1; } 100% { opacity: 0; transform: translateY(40px); } }
@keyframes workflow-trace { to { transform: scaleX(1); } }
@media (max-width: 760px) {
  .store-downloads { order: 2; justify-content: center; margin: 0 0 12px; padding: 0; }
  .premium-actions { order: 3; margin-bottom: 28px; }
  .premium-phone { order: 4; }
  .premium-hero-lead { order: 5; }
  .premium-hero-copy { order: 6; }
  .premium-access { order: 7; }
  .farm-preview { max-width: 100%; }
  .capability-card { padding: 24px; }
  .feature-visual { height: 74px; }
  .faq-contact { max-width: 100%; margin-top: 22px; }
}
@media (max-width: 560px) {
  .store-downloads { gap: 8px; }
  .official-store-link img { width: 132px; height: 44px; }
  .official-google-badge img { width: 151px; height: 59px; }
  .store-platform > span:last-child { font-size: 10px; margin-top: 6px; }
  .premium-hero .premium-intro h1 { margin-bottom: 16px; }
  .premium-actions { margin-bottom: 25px; }
  .premium-phone .device-frame { width: 205px; }
  .farm-preview { margin-top: 23px; }
  .capability-card:first-child, .capability-card:nth-child(5) { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .site-ready .phone-contours, .promise-intro.is-visible .farm-preview-row,
  .capability-card.is-visible :is(.feature-draw, .feature-point, .import-parcels i, .export-visual i, .history-visual i, .feature-scan, .planning-visual span),
  .workflow-steps > li.is-visible::after { animation: none !important; }
  .workflow-steps > li.is-visible::after { transform: scaleX(1); }
  .feature-scan { opacity: 0; }
}
