/* Global rules and interaction states. Layout and look live inline in the
   markup, copied from the Claude Design prototypes (project/*.dc.html). */

body { margin: 0; background: #F7F5F0; }
body.theme-dark { background: #1F2421; }
a { color: #9A3902; }
a:hover { color: #6B2801; }
body.theme-dark a { color: #F58A4A; }
body.theme-dark a:hover { color: #FDBA8C; }

[hidden] { display: none !important; }

.page {
  container-type: inline-size;
  background: #F7F5F0;
  color: #1F2421;
  font-family: 'Noto Sans', sans-serif;
  font-size: 16px;
}

/* CTA orange, hover darkens */
.btn-cta { background: #C24702; }
.btn-cta:hover { background: #9A3902; }
.btn-cta:disabled { background: #9A3902; cursor: progress !important; opacity: .85; }

/* Home audience cards */
.card-farms { border: 1px solid #E6E1D6; }
.card-farms:hover { border-color: #1F2421; }
.card-investors { background: #23443E; }
.card-investors:hover { background: #1B3632; }

/* Text-style buttons ("Send another") */
.link-btn { background: none; border: 0; border-radius: 0; margin: 0; font: inherit; font-weight: 600; cursor: pointer; }

/* Irrigation chips: single-select radio group styled as the design's chips */
.chip { position: relative; display: inline-flex; }
.chip input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.chip span {
  cursor: pointer; min-height: 44px; box-sizing: border-box; display: flex; align-items: center;
  padding: 0 16px; border: 1px solid #D6D1C6; background: #fff; color: #1F2421;
  border-radius: 4px; font: 500 15px 'Noto Sans', sans-serif;
}
.chip input:checked + span { background: #1F2421; color: #F7F5F0; border-color: #1F2421; }
.chip input:focus-visible + span { outline: 2px solid #1E6FB8; outline-offset: 2px; }

/* Field validation */
.field[aria-invalid="true"] { border-color: #B3261E !important; }
.input-dark[aria-invalid="true"] { border-color: #F2B8B5 !important; }

.form-error { color: #B3261E; font: 600 14px/1.45 'Noto Sans', sans-serif; }
.form-error-dark { color: #F2B8B5; font: 600 13px/1.45 'Noto Sans', sans-serif; }

/* Honeypot: off-screen, not display:none (some bots skip hidden inputs) */
.hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; opacity: 0; }

/* Plain-text pages (Privacy) */
.prose { max-width: 680px; font-size: 16px; line-height: 1.6; color: #3a403c; }
.prose h2 { margin: 32px 0 8px; font: 700 21px Manrope, sans-serif; color: #1F2421; }
.prose p { margin: 0 0 12px; }
