:where([data-etch-element="container"]) {
  inline-size: 100%;
  display: flex;
  flex-direction: column;
  max-inline-size: var(--content-width, 1366px);
  align-self: center; margin-inline: auto;
}
:where([data-etch-element="flex-div"]) {
  inline-size: 100%;
  display: flex;
  flex-direction: column;
}
:where([data-etch-element="iframe"]) {
  inline-size: 100%;
  height: auto;
 aspect-ratio: 16/9;
}
:where([data-etch-element="section"]) {
  inline-size: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.site-header {
  
  padding-block: var(--space-m);
  padding-inline: var(--gutter);
  background-color: var(--bg-light);
  color: var(--text-dark);
  &:has(~ main .hero:first-child) {
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    z-index: 10;
    background-color: transparent;
    color: var(--text-light);
  }
}
.site-header__inner {
  
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-s) var(--space-l);
}
.site-header__logo-link {
  
  color: inherit;
  &:hover {
    color: inherit;
  }
}
.site-header__logo {
  
  inline-size: 10.625rem;
  block-size: auto;
}
.site-header__nav {
  
  margin-inline-start: auto;
  @media (width < 769px) {
    order: 3;
    inline-size: 100%;
    margin-inline-start: 0;
  }
}
.site-nav {
  
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs) var(--space-l);
}
.site-nav__link {
  
  color: inherit;
  font-weight: 500;
  text-decoration: none;
  text-underline-offset: 0.35em;
  &:hover {
    color: inherit;
    text-decoration: underline;
  }
}
.site-header__cta {
  
  .site-header:has(~ main .hero:first-child) & {
    --btn-background: var(--base-light);
    --btn-background-hover: var(--base-ultra-light);
    --btn-text-color: var(--base);
    --btn-text-color-hover: var(--base);
    --btn-border-color: var(--base-light);
    --btn-border-color-hover: var(--base-ultra-light);
  }
}
.site-footer {
  
  padding-block: var(--space-xxl) var(--space-l);
  padding-inline: var(--gutter);
}
.site-footer__inner {
  
  gap: var(--space-xxl);
}
.site-footer__top {
  
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-xl);
}
.site-footer__logo-link {
  
  color: var(--text-light);
  &:hover {
    color: var(--text-light);
  }
}
.site-footer__logo {
  
  inline-size: clamp(13.75rem, 30vw, 25rem);
  block-size: auto;
}
.site-footer__columns {
  
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xl) var(--space-xxl);
}
.site-footer__column {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  min-inline-size: 10rem;
}
.site-footer__heading {
  
  color: var(--text-light-muted);
  padding-block-end: var(--space-xs);
}
.mono-label {
  
  font-family: "DM Mono", ui-monospace, monospace;
  font-weight: 500;
  font-size: var(--text-xs);
  line-height: 1.3;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.site-footer__links {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.site-footer__link {
  
  color: var(--text-light);
  text-decoration: none;
  &:hover {
    color: var(--text-light);
    text-decoration: underline;
  }
}
.site-footer__text {
  
  color: var(--text-light);
}
.site-footer__bottom {
  
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--space-s);
  padding-block-start: var(--space-m);
  border-block-start: 1px solid var(--border-color-light);
  font-size: var(--text-s);
  color: var(--text-light-muted);
}
.site-footer__legal-link {
  
  color: inherit;
  text-decoration: none;
  &:hover {
    color: var(--text-light);
    text-decoration: underline;
  }
}
.section-intro {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
}
.section-intro__eyebrow {
  
  color: inherit;
}
.section-intro__heading {
  
  max-inline-size: 47.5rem;
}
.section-intro__text {
  
  max-inline-size: 35rem;
}
.menu-row {
  
  display: grid;
  grid-template-columns: minmax(0, 1fr) repeat(2, 5.5rem);
  @media (width < 37.5rem) {
    grid-template-columns: minmax(0, 1fr) repeat(2, 3.5rem);
  }
  align-items: baseline;
  gap: var(--space-s);
  padding-block: var(--space-m);
  border-block-end: 1px solid color-mix(in oklch, currentColor 18%, transparent);
  &[data-columns="1"] {
    grid-template-columns: minmax(0, 1fr) 4.5rem;
    padding-block: var(--space-s);
  }
}
.menu-row__body {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.menu-row__name {
  
  font-weight: 700;
  letter-spacing: -0.01em;
}
.menu-row__description {
  
  font-size: var(--text-s);
}
.menu-row__price {
  
  text-align: end;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  color: inherit;
}
.photo-tile {
  
  position: relative;
  overflow: hidden;
  min-block-size: 13.75rem;
  border-radius: var(--radius);
  background-color: var(--base-semi-light);
}
.photo-tile__image {
  
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.photo-tile__label {
  
  position: absolute;
  inset-inline-start: var(--space-s);
  inset-block-end: var(--space-s);
  padding: var(--space-xs) var(--space-s);
  border-radius: 999px;
  background-color: var(--base-light);
  color: var(--base);
}
.arrow-link {
  
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  padding-block-end: var(--space-xs);
  border-block-end: 2px solid currentColor;
  color: var(--text-dark);
  font-weight: 600;
  text-decoration: none;
  transition: gap var(--transition);
  &:hover {
    gap: var(--space-s);
    color: var(--text-dark);
  }
}
.arrow-link__icon {
  
  inline-size: 1.125rem;
  block-size: auto;
  flex-shrink: 0;
}
.hero {
  
  position: relative;
  isolation: isolate;
  overflow: hidden;
  justify-content: flex-end;
  min-block-size: min(100svh, 55rem);
  padding-block: calc(var(--space-xxl) * 2) var(--space-xl);
}
.hero__shade {
  
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: linear-gradient(
    180deg,
    color-mix(in oklch, var(--base) 65%, transparent) 0%,
    color-mix(in oklch, var(--base) 15%, transparent) 22%,
    color-mix(in oklch, var(--base) 20%, transparent) 38%,
    color-mix(in oklch, var(--base) 72%, transparent) 62%,
    color-mix(in oklch, var(--base) 94%, transparent) 100%
  );

  @media (width < 56.25rem) {
    background-image: linear-gradient(
      180deg,
      color-mix(in oklch, var(--base) 72%, transparent) 0%,
      color-mix(in oklch, var(--base) 35%, transparent) 22%,
      color-mix(in oklch, var(--base) 45%, transparent) 38%,
      color-mix(in oklch, var(--base) 82%, transparent) 60%,
      color-mix(in oklch, var(--base) 96%, transparent) 100%
    );
  }
}
.hero__inner {
  
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-xl);
}
.hero__content {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
  max-inline-size: 53.75rem;
}
.hero__title {
  
  line-height: 0.95;
  letter-spacing: -0.03em;
}
.hero__text {
  
  max-inline-size: 35rem;
  font-size: var(--text-l);
}
.hero__status {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  padding-inline-start: var(--space-m);
  border-inline-start: 1px solid var(--border-color-light);
}
.hero__open {
  
  display: flex;
  align-items: center;
  gap: var(--space-xs);
}
.hero__dot {
  
  --empty-element-size: 0;
  inline-size: 0.5rem;
  block-size: 0.5rem;
  flex-shrink: 0;
  border-radius: 50%;
  background-color: var(--success);
}
.hero__address {
  
  font-size: var(--text-s);
  color: var(--text-light-muted);
}
.feature-split__inner {
  
  display: grid;
  align-items: center;
  gap: var(--space-xl);
  @media (width >= 56.25rem) {
    grid-template-columns: var(--grid-3-2);
    gap: var(--space-xxl);
  }
}
.feature-split__content {
  
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-l);
}
.feature-split__image {
  
  inline-size: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--radius);
}
.menu-highlights {
  
  border-block-start: 1px solid var(--border-color-dark);
}
.menu-highlights__inner {
  
  display: grid;
  gap: var(--space-xl);
  @media (width >= 56.25rem) {
    grid-template-columns: var(--grid-1-2);
    gap: var(--space-xxl);
  }
}
.menu-highlights__intro {
  
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-l);
}
.menu-highlights__button {
  
  gap: var(--space-xs);
}
.menu-highlights__icon {
  
  inline-size: 1.125rem;
  block-size: auto;
  flex-shrink: 0;
}
.menu-highlights__figure {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  inline-size: 100%;
  padding-block-start: var(--space-m);
}
.menu-highlights__image {
  
  inline-size: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius);
}
.menu-highlights__caption {
  
  font-family: "DM Mono", ui-monospace, monospace;
  font-size: var(--text-xs);
  letter-spacing: 0.04em;
}
.menu-list {
  
  display: flex;
  flex-direction: column;
}
.menu-list__head {
  
  display: grid;
  grid-template-columns: minmax(0, 1fr) repeat(2, 5.5rem);
  @media (width < 37.5rem) {
    grid-template-columns: minmax(0, 1fr) repeat(2, 3.5rem);
  }
  gap: var(--space-s);
  padding-block-end: var(--space-s);
  border-block-end: 1.5px solid var(--text-dark);
}
.menu-list__size {
  
  text-align: end;
}
.coffee-feature {
  
  padding: 0;
}
.coffee-feature__inner {
  
  display: grid;
  max-inline-size: none;
  @media (width >= 56.25rem) {
    grid-template-columns: 1.1fr 1fr;
  }
}
.coffee-feature__image {
  
  inline-size: 100%;
  block-size: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  @media (width >= 56.25rem) {
    aspect-ratio: auto;
    min-block-size: 40rem;
  }
}
.coffee-feature__content {
  
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-xl);
  max-inline-size: 42.5rem;
  padding: var(--section-space-m) var(--gutter);
}
.coffee-facts {
  
  display: grid;
  grid-template-columns: var(--grid-3);
  gap: var(--space-m);
  padding-block-start: var(--space-m);
  border-block-start: 1px solid var(--border-color-light);
  @media (width < 37.5rem) {
    grid-template-columns: var(--grid-1);
  }
}
.coffee-facts__item {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.coffee-facts__title {
  
  font-family: var(--heading-font-family);
  font-weight: 700;
  font-size: var(--text-l);
  color: var(--text-light);
}
.coffee-facts__text {
  
  font-size: var(--text-s);
  color: var(--text-light-muted);
}
.seasons__inner {
  
  gap: var(--space-xl);
}
.seasons__head {
  
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-m) var(--space-xl);
}
.seasons__text {
  
  max-inline-size: 26.25rem;
}
.visit {
  
  --heading-color: var(--text-light);
  background-color: var(--primary);
  color: var(--text-light);
}
.visit__inner {
  
  display: grid;
  gap: var(--space-xl);
  @media (width >= 56.25rem) {
    grid-template-columns: 1.2fr 1fr 1fr;
    gap: var(--space-xxl);
  }
}
.visit__details {
  
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-l);
}
.visit__group {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  inline-size: 100%;
}
.visit__label {
  
  color: var(--primary-light);
}
.hours-list {
  
  display: flex;
  flex-direction: column;
  border-block-start: 1px solid color-mix(in oklch, currentColor 25%, transparent);
}
.hours-list__row {
  
  display: flex;
  justify-content: space-between;
  gap: var(--space-s);
  padding-block: var(--space-xs);
  border-block-end: 1px solid color-mix(in oklch, currentColor 25%, transparent);
  &[data-closed="true"] {
    opacity: 0.6;
  }
}
.hours-list__time {
  
  font-weight: 500;
}
.visit__phone {
  
  color: var(--text-light);
  font-weight: 500;
  text-decoration: none;
  &:hover {
    color: var(--text-light);
    text-decoration: underline;
  }
}
.visit__button {
  
  gap: var(--space-xs);
}
.visit__icon {
  
  inline-size: 1.125rem;
  block-size: auto;
  flex-shrink: 0;
}
.visit__image {
  
  inline-size: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  object-position: 100% 50%;
  border-radius: var(--radius);
}
.hero__image {
  
  position: absolute;
  inset: 0;
  z-index: -2;
  inline-size: 100%;
  max-inline-size: none;
  block-size: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}
.menu-list__items {
  
  display: flex;
  flex-direction: column;
}
.menu-row__price--large {
  
  [data-columns="1"] > & {
    display: none;
  }
}
.hero--page {
  
  min-block-size: min(75svh, 41.25rem);
}
.hero__note {
  
  max-inline-size: 20rem;
  color: var(--text-light-muted);
}
.cta-band {
  
  --heading-color: var(--text-light);
  background-color: var(--primary);
  color: var(--text-light);
}
.cta-band__inner {
  
  display: grid;
  align-items: end;
  gap: var(--space-xl);
  @media (width >= 56.25rem) {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--space-xxl);
  }
}
.cta-band__copy {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
}
.cta-band__eyebrow {
  
  color: var(--primary-light);
}
.cta-band__heading {
  
  max-inline-size: 47.5rem;
}
.cta-band__actions {
  
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-s);
  max-inline-size: 23.75rem;
}
.cta-band__text {
  
  color: var(--text-light-muted);
  white-space: pre-line;
}
.cta-band__button {
  
  gap: var(--space-xs);
}
.cta-band__icon {
  
  inline-size: 1.125rem;
  block-size: auto;
  flex-shrink: 0;
}
.cta-band__link {
  
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--btn-padding-block) var(--btn-padding-inline);
  border: 1.5px solid color-mix(in oklch, var(--text-light) 60%, transparent);
  border-radius: 999px;
  color: var(--text-light);
  font-weight: 600;
  text-decoration: none;
  &:hover {
    color: var(--text-light);
    border-color: var(--text-light);
  }
}
.stat {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  padding-block-start: var(--space-m);
  padding-inline: var(--space-m);
  border-inline-start: 1px solid var(--border-color-dark);
  &:first-child {
    padding-inline-start: 0;
    border-inline-start: 0;
  }
}
.stat__value {
  
  font-family: var(--heading-font-family);
  font-weight: 900;
  font-size: clamp(2.25rem, 4vw, 3.5rem);
  line-height: 1;
  letter-spacing: -0.025em;
  color: var(--text-dark);
}
.stat__text {
  
  font-size: var(--text-s);
}
.stat__label {
  
  color: var(--text-dark-muted);
}
.numbered-item {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
  padding-block-start: var(--space-m);
  border-block-start: 1.5px solid var(--text-dark);
}
.numbered-item__number {
  
  color: var(--text-dark-muted);
}
.numbered-item__title {
  
  font-weight: 700;
  letter-spacing: -0.01em;
}
.farm-row {
  
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-xs);
  align-items: baseline;
  padding-block: var(--space-s);
  border-block-end: 1px solid var(--border-color-light);
  @media (width >= 56.25rem) {
    grid-template-columns: 2fr 1.5fr 1fr;
    gap: var(--space-m);
  }
}
.farm-row__farm {
  
  font-family: var(--heading-font-family);
  font-weight: 700;
  font-size: var(--text-xl);
  line-height: 1.2;
  color: var(--text-light);
}
.farm-row__producer {
  
  color: var(--text-light-muted);
}
.farm-row__origin {
  
  color: var(--text-light-muted);
  @media (width >= 56.25rem) {
    text-align: end;
  }
}
.detail-row {
  
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-xs) var(--space-m);
  padding-block: var(--space-s);
  border-block-end: 1px solid color-mix(in oklch, currentColor 18%, transparent);
  &[data-layout="step"] {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
}
.detail-row__title {
  
  font-family: var(--heading-font-family);
  font-weight: 700;
  font-size: var(--text-l);
  color: var(--heading-color);
  [data-layout="step"] > & {
    flex-shrink: 0;
    inline-size: 2.5rem;
    font-family: "DM Mono", ui-monospace, monospace;
    font-weight: 500;
    font-size: var(--text-xs);
    letter-spacing: 0.14em;
    color: inherit;
    opacity: 0.7;
  }
}
.detail-row__text {
  
  [data-layout="split"] > & {
    text-align: end;
    color: var(--text-dark-muted);
  }
}
.section-head {
  
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-m) var(--space-xl);
}
.section-head__text {
  
  max-inline-size: 27.5rem;
}
.feature-split__text {
  
  max-inline-size: 35rem;
}
.feature-split__inner--reverse {
  
  @media (width >= 56.25rem) {
    grid-template-columns: var(--grid-2-3);
  }
}
.photo-mosaic {
  
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-s);
  & > :first-child,
  & > :last-child {
    grid-column: 1 / -1;
  }
  & > :first-child {
    min-block-size: 22.5rem;
  }
  @media (width >= 56.25rem) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(2, 17.5rem);
    & > :first-child {
      grid-column: 1 / 3;
      grid-row: 1 / 3;
    }
    & > :last-child {
      grid-column: 3 / 5;
    }
  }
}
.mosaic-section__inner {
  
  gap: var(--space-xl);
}
.split-panel {
  
  padding: 0;
}
.split-panel__inner {
  
  display: grid;
  max-inline-size: none;
  @media (width >= 56.25rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.split-panel__image {
  
  inline-size: 100%;
  block-size: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  @media (width >= 56.25rem) {
    aspect-ratio: auto;
    min-block-size: 40rem;
  }
}
.split-panel__content {
  
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-xl);
  max-inline-size: 42.5rem;
  padding: var(--section-space-m) var(--gutter);
}
.split-panel__head {
  
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-m);
}
.split-panel__number {
  
  color: var(--text-light-muted);
}
.menu-board__inner {
  
  display: grid;
  gap: var(--space-xxl);
  align-items: start;
  @media (width >= 56.25rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.menu-board__column {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
}
.menu-board__head {
  
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-m);
}
.menu-board__title {
  
  font-size: clamp(2.25rem, 4vw, 3rem);
}
.menu-board__number {
  
  color: var(--text-dark-muted);
}
.menu-board__figure {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  padding-block-start: var(--space-m);
}
.menu-board__image {
  
  inline-size: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: var(--radius);
}
.menu-board__caption {
  
  font-family: "DM Mono", ui-monospace, monospace;
  font-size: var(--text-xs);
  letter-spacing: 0.04em;
  color: var(--text-dark-muted);
}
.food-group {
  
  display: flex;
  flex-direction: column;
}
.food-group__label {
  
  padding-block-end: var(--space-s);
  border-block-end: 1.5px solid color-mix(in oklch, currentColor 60%, transparent);
  color: var(--text-light-muted);
}
.story__inner {
  
  display: grid;
  gap: var(--space-xl);
  @media (width >= 56.25rem) {
    grid-template-columns: var(--grid-1-2);
    gap: var(--space-xxl);
  }
}
.story__aside {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-l);
}
.story__image {
  
  inline-size: 100%;
  max-inline-size: 25rem;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: 30% 50%;
  border-radius: var(--radius);
}
.story__copy {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-m);
  max-inline-size: 47.5rem;
}
.story__lead {
  
  font-family: var(--heading-font-family);
  font-weight: 500;
  font-size: clamp(1.625rem, 3vw, 2.25rem);
  line-height: 1.28;
  letter-spacing: -0.015em;
  color: var(--text-dark);
}
.story__text {
  
  max-inline-size: 40rem;
}
.stat-row {
  
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  row-gap: var(--space-l);
  border-block-start: 1.5px solid var(--text-dark);
  @media (width >= 56.25rem) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.stat-band {
  
  padding-block-start: 0;
}
.wide-photo {
  
  padding-block-start: 0;
}
.wide-photo__figure {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.wide-photo__image {
  
  inline-size: 100%;
  aspect-ratio: 2 / 1;
  object-fit: cover;
  object-position: 50% 45%;
  border-radius: var(--radius);
}
.wide-photo__caption {
  
  font-family: "DM Mono", ui-monospace, monospace;
  font-size: var(--text-xs);
  letter-spacing: 0.04em;
  color: var(--text-dark-muted);
}
.values__inner {
  
  gap: var(--space-xl);
  padding-block-start: var(--section-space-m);
  border-block-start: 1px solid var(--border-color-dark);
}
.values {
  
  padding-block-start: 0;
}
.values__list {
  
  display: grid;
  gap: var(--space-l);
  @media (width >= 56.25rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.farms__inner {
  
  gap: var(--space-xl);
}
.farm-list__head {
  
  display: none;
  @media (width >= 56.25rem) {
    display: grid;
    grid-template-columns: 2fr 1.5fr 1fr;
    gap: var(--space-m);
    padding-block-end: var(--space-s);
    border-block-end: 1.5px solid color-mix(in oklch, var(--text-light) 60%, transparent);
    color: var(--text-light-muted);
    & > :last-child {
      text-align: end;
    }
  }
}
.farm-list__items {
  
  display: flex;
  flex-direction: column;
}
.awards__inner {
  
  gap: var(--space-xl);
}
.detail-list {
  
  display: flex;
  flex-direction: column;
  border-block-start: 1.5px solid currentColor;
}
.location__inner {
  
  display: grid;
  gap: var(--space-xl);
  @media (width >= 56.25rem) {
    grid-template-columns: var(--grid-2-3);
    gap: var(--space-xxl);
  }
}
.location__details {
  
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-l);
  padding-block-start: var(--space-l);
  border-block-start: 1.5px solid var(--text-dark);
}
.location__group {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  inline-size: 100%;
}
.location__label {
  
  color: var(--text-dark-muted);
}
.location__value {
  
  font-family: var(--heading-font-family);
  font-weight: 700;
  font-size: var(--text-xl);
  line-height: 1.3;
  color: var(--text-dark);
  text-decoration: none;
}
.location__button {
  
  gap: var(--space-xs);
}
.location__icon {
  
  inline-size: 1.125rem;
  block-size: auto;
  flex-shrink: 0;
}
.location__map {
  
  inline-size: 100%;
  min-block-size: 30rem;
  block-size: 100%;
  aspect-ratio: auto;
  border: 0;
  border-radius: var(--radius);
  background-color: var(--base-semi-light);
}
.contact-form {
  
  --heading-color: var(--text-light);
  background-color: var(--primary);
  color: var(--text-light);
}
.contact-form__inner {
  
  display: grid;
  gap: var(--space-xl);
  @media (width >= 56.25rem) {
    grid-template-columns: var(--grid-2-3);
    gap: var(--space-xxl);
  }
}
.contact-form__form {
  
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-m);
}
.contact-form__row {
  
  display: grid;
  gap: var(--space-m);
  inline-size: 100%;
  @media (width >= 37.5rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.contact-form__field {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  inline-size: 100%;
}
.contact-form__label {
  
  color: var(--primary-light);
}
.contact-form__input {
  
  inline-size: 100%;
  min-block-size: 3.5rem;
  padding: var(--space-xs) var(--space-s);
  border: 1.5px solid transparent;
  border-radius: var(--radius);
  background-color: var(--base-light);
  color: var(--base);
  &::placeholder {
    color: var(--base-semi-dark);
  }
  &:focus-visible {
    outline: 2px solid var(--base-light);
    outline-offset: 2px;
  }
}
.contact-form__textarea {
  
  min-block-size: 11.25rem;
  resize: vertical;
}
.contact-form__button {
  
  gap: var(--space-xs);
}
.site-footer__legal-links {
  
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-m);
}
.legal__body {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
  max-inline-size: 47.5rem;
}
.legal__heading {
  
  padding-block-start: var(--space-l);
  font-size: var(--h4);
  font-weight: 700;
  letter-spacing: -0.01em;
}
.legal__text {
  
  max-inline-size: 70ch;
}
.legal__list {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  padding-inline-start: var(--space-m);
  list-style: disc;
}
.legal__item {
  
  max-inline-size: 66ch;
}
.legal__link {
  
  color: var(--text-dark);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.legal__effective {
  
  padding-block-start: var(--space-l);
  color: var(--text-dark-muted);
}
.header-alpha {
  
  padding-block: var(--space-m);
  padding-inline: var(--gutter);
  background-color: var(--bg-light);
  color: var(--text-dark);
  &[data-header-position='fixed'] {
    position: fixed;
    inset-block-start: 0;
    inset-inline: 0;
    z-index: 10;
  }
  &:has(~ main .hero:first-child) {
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    z-index: 10;
    background-color: transparent;
    color: var(--text-light);
  }
}
.header-alpha__inner {
  
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-s) var(--space-l);
}
.header-alpha__logo-link-wrapper {
  
  flex-shrink: 0;
  color: inherit;
  &:hover {
    color: inherit;
  }
  @media (width < 769px) {
    margin-inline-end: auto;
    .header-alpha:has(.flex-mobile-trigger[aria-expanded='true']) & {
      position: fixed;
      inset-block-start: var(--space-m);
      inset-inline-start: var(--gutter);
      z-index: 100000;
      color: var(--text-light);
    }
  }
}
.header-alpha__logo {
  
  inline-size: 10.625rem;
  block-size: auto;
  flex-shrink: 0;
  color: inherit;
  @media (width < 769px) {
    inline-size: 8.75rem;
  }
}
.scheme-switch-bravo {
  --switch-size: 16%;
  --icon-size: 10em;
  --moon-color: #d9fbff;
  --star-color: var(--moon-color);
  --sun-color: #ffc233;
  inline-size: 100%;
  max-inline-size: max-content;
  inline-size: 36px;
  block-size: 36px;
  aspect-ratio: 1;
  min-inline-size: 0;
  min-block-size: 0;
  display: grid;
  place-items: center;
  padding: 0;
  position: relative;
  overflow: visible;
}
.scheme-switch-bravo__icon {
  font-size: var(--switch-size);
  min-inline-size: 0;
  min-block-size: 0;
  display: flex;
  inline-size: 100%;
  block-size: 100%;
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  translate: -50% -50%;
  border-radius: 50%;
  transition:
    rotate 400ms ease-in-out,
    box-shadow 400ms ease-in-out,
    background 400ms ease-in-out;

  /* # Sun */
  [data-current-scheme='sun' i] & {
    font-size: calc(var(--switch-size) * 1.2);
    background: var(--sun-color);
    inline-size: calc(var(--icon-size) * 0.7);
    block-size: calc(var(--icon-size) * 0.7);
    rotate: 0deg;
    box-shadow:
      3em 3em 0 5em var(--sun-color) inset,
      0 -5em 0 -2.7em var(--sun-color),
      3.5em -3.5em 0 -3em var(--sun-color),
      5em 0 0 -2.7em var(--sun-color),
      3.5em 3.5em 0 -3em var(--sun-color),
      0 5em 0 -2.7em var(--sun-color),
      -3.5em 3.5em 0 -3em var(--sun-color),
      -5em 0 0 -2.7em var(--sun-color),
      -3.5em -3.5em 0 -3em var(--sun-color);
  }

  /* # Moon */
  [data-current-scheme='moon' i] & {
    font-size: calc(var(--switch-size) * 1);
    inline-size: var(--icon-size);
    block-size: var(--icon-size);
    background: transparent;
    rotate: -75deg;
    box-shadow:
      3em 2.5em 0 0em var(--moon-color) inset,
      /* ## Stars */ color-mix(in hsl, var(--star-color, white) 70%, transparent) 0em -7em 0 -4.5em,
      var(--star-color, white) 2em 6em 0 -4em,
      var(--star-color, white) -4em -7em 0 -4.3em,
      var(--star-color, white) 6em 2em 0 -4.2em,
      color-mix(in hsl, var(--star-color, white) 70%, transparent) 4.5em 4em 0 -4.5em,
      var(--star-color, white) -8em 0.5em 0 -4.4em,
      color-mix(in hsl, var(--star-color, white) 70%, transparent) -6em -4em 0 -4.5em,
      color-mix(in hsl, var(--star-color, white) 70%, transparent) -1em 7em 0 -4.5em;
  }
}
.flex-mobile-trigger {
  
  --burger-size: 24px;
  --burger-line-height: 1.5px;
  --burger-gap: 6px;
  --burger-offset: calc(var(--burger-gap) + var(--burger-line-height));
  display: var(--flex-nav-trigger-display, none);
  flex-direction: column;
  justify-content: center;
  flex-shrink: 0;
  block-size: var(--burger-size);
  inline-size: var(--burger-size);
  aspect-ratio: 1;
  padding: 0;
  margin: 0;
  gap: var(--burger-gap);
  border: 0;
  background: none;
  color: inherit;
  cursor: pointer;
  z-index: 99999;
  @media (width < 769px) {
    --flex-nav-trigger-display: flex;
    order: 3;
  }
  &[aria-expanded='true'] {
    position: fixed;
    inset-block-start: calc(var(--space-m) + 0.5625rem);
    inset-inline-end: var(--gutter);
    color: var(--text-light);
    span:nth-child(1) {
      transform: translateY(var(--burger-offset)) rotate(45deg);
    }
    span:nth-child(2) {
      opacity: 0;
    }
    span:nth-child(3) {
      transform: translateY(calc(var(--burger-offset) * -1)) rotate(-45deg);
    }
  }
}
.nav-burger-line {
  
  min-width: 0;
  min-height: 0;
  block-size: var(--burger-line-height);
  inline-size: 100%;
  background: currentColor;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.flex-nav--custom {
  
  --mobile-nav-header: none;
  --flex-nav-background: transparent;
  @media (width >= 769px) {
    --flex-nav-padding-block: 0;
    --flex-nav-padding-inline: 0;
    .flex-nav-dropdown--custom {
      --panel-background: var(--bg-light);
    }
  }
  @media (width < 769px) {
    --flex-nav-padding-block: calc(var(--space-xl) * 2);
    --flex-nav-padding-inline: var(--gutter);
    .flex-nav-dropdown--custom {
      --panel-background: transparent;
    }
  }
  :has(> &) {
    container-type: inline-size;
  }
}
.flex-nav {
  
  position: relative;
  &:has([data-panel-alignment='full' i]) {
    position: static;
  }
  header[data-header-detected-position='static']:has(&) {
    position: relative;
  }
  display: var(--nav-display, flex);
  flex-direction: row;
  align-items: center;
  inline-size: 100%;
  max-inline-size: 100%;
  z-index: 9999;
  @media (width >= 769px) {
    display: flex;
    ul {
      justify-content: end;
    }
  }
  @media (width < 769px) {
    --nav-display: none;
    --flex-nav-direction: column;
    position: fixed;
    inset: 0;
    block-size: 100dvh;
    background-color: var(--base);
    color: var(--text-light);
    overflow-y: auto;
  }
  @media (width >= 769px) {
    [data-display-item-on='mobile' i] {
      display: none;
    }
  }
  @media (width < 769px) {
    [data-display-item-on='desktop' i] {
      display: none;
    }
  }
  :where(ul, li) {
    list-style: none;
    padding: 0;
    margin: 0;
  }
}
.flex-nav__list {
  
  display: flex;
  flex-direction: var(--flex-nav-direction, row);
  align-items: center;
  gap: var(--space-l);
  inline-size: 100%;
  padding: var(--flex-nav-padding-block) var(--flex-nav-padding-inline);
  background: var(--flex-nav-background, transparent);
  @media (width < 769px) {
    --flex-nav-direction: column;
    justify-content: center;
    align-items: center;
    min-block-size: 100%;
    gap: var(--space-m);
    text-align: center;
    &::before {
      content: var(--mobile-nav-header);
    }
  }
}
.flex-nav__list-item {
  display: flex;
  flex-direction: var(--nav-direction, row);
  align-items: var(--nav-item-alignment, center);
  justify-content: start;
  &[data-has-dropdown-style='standard' i],
  &[data-panel-alignment*='parent' i] {
    position: relative;
  }
  @media (width < 769px) {
    --nav-direction: column;
    --nav-item-alignment: start;
  }
  .flex-nav__dropdown[data-dropdown-flow='column'] a {
    display: flex;
    flex-direction: column;
    line-height: 1.5;
  }
  .flex-nav__dropdown[data-dropdown-alignment='start'] a {
    align-items: start;
  }
}
.flex-nav__link {
  
  color: inherit;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  text-underline-offset: 0.35em;
  &:hover {
    color: inherit;
    text-decoration: underline;
  }
  @media (width < 769px) {
    font-family: var(--heading-font-family);
    font-size: var(--h2);
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.02em;
  }
}
.flex-nav__list-item-description {
  font-size: var(--text-s, .8rem);
  color: var(--text-dark-muted, #555);
}
.flex-nav__dropdown-trigger {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5em;
  :where(&) {
    padding: 0;
    margin: 0;
  }
  svg {
    inline-size: 1em;
    color: currentColor;
    transition: rotate .2s ease-in-out;
  }
  &[aria-expanded="true"] {
    svg {
      rotate: 180deg;
    }
  }
}
.flex-nav-dropdown--custom {
  @media (width >= 769px) {
    > * {
      
    box-shadow: 0 0 15px -5px hsl(from black h s l / 0.15);
    }
  }
}
.flex-nav__dropdown {
  --panel-block-padding: 1em;
  --panel-inline-padding: 1em;
  position: var(--panel-position, absolute);
  interpolate-size: allow-keywords;
  top: 100%;
  display: flex;
  visibility: hidden;
  /* Is Standard */
  &[data-dropdown-style='standard' i] {
    width: auto;
    inline-size: max-content;
    max-inline-size: 300px;
    min-inline-size: 200px;
    left: 0;
    right: auto;
  }
  /* Positions */
  [data-panel-alignment='right' i] & {
    left: auto;
    right: 0;
  }
  @media (width >= 769px) {
    [data-panel-alignment*='container' i] & {
      left: 50%;
      --panel-translate-x: -50%;
      translate: calc(var(--panel-nudge, 0px) + var(--panel-translate-x, 0px)) 0;
    }
    [data-panel-alignment*='parent' i] & {
      width: var(--panel-width);
      left: 50%;
      --panel-translate-x: -50%;
      translate: calc(var(--panel-nudge, 0px) + var(--panel-translate-x, 0px)) 0;
    }
    [data-panel-alignment='full' i] & {
      left: 0;
      top: 100%;
      inline-size: 100dvw;
      max-inline-size: 100dvw;
      min-inline-size: 100dvw;
      [data-flex-nav-inner] {
        border-radius: 0;
      }
    }
  }
  /* End Positions */
  width: 100%;
  max-inline-size: var(--panel-width);
  flex-direction: column;
  /* Preview in Builder */
  &[data-preview='true'].etch-builder-block {
    block-size: auto !important;
    visibiliy: visible !important;
    opacity: 1 !important;
    [data-flex-nav-inner] {
      visibility: visible !important;
      opacity: 1 !important;
      block-size: auto !important;
    }
  }
  /* End Preview in Builder */
  @media (width < 769px) {
    --panel-inline-padding: 1em 0;
    --panel-offset-block: 0;
    position: relative;
    top: auto;
    display: grid;
    grid-template-rows: 0fr;
    min-block-size: 0;
    block-size: 0;
    transition:
      grid-template-rows 0.2s ease,
      block-size 0.2s ease;
    &[data-open='true'] {
      grid-template-rows: 1fr;
      block-size: auto;
    }
  }
}
.flex-nav__dropdown-inner {
  display: flex;
  flex-direction: column;
  gap: var(--panel-content-gap, 0.5em);
  inline-size: 100%;
  max-inline-size: 100%;
  position: relative;
  top: var(--panel-offset-block, 0);
  padding: var(--panel-block-padding, 1em) var(--panel-inline-padding, 1em);
  background: var(--panel-background);
  border-radius: var(--radius, 0.5rem);
  &[data-flex-nav-inner] {
    opacity: 0;
    min-block-size: 0;
    visibility: hidden;
    transform: scaleY(0.95);
    transform-origin: top;
    overflow: hidden;
    transition:
      opacity 0.2s ease,
      transform 0.2s ease,
      visibility 0.2s;
  }

  [data-dropdown-panel][data-open='true'] & {
    opacity: 1;
    visibility: visible;
    transform: scaleY(1);
  }
}
.header-alpha__actions {
  
  display: flex;
  align-items: center;
  gap: var(--space-s);
  flex-shrink: 0;
}
.header-alpha__cta {
  
  .header-alpha:has(~ main .hero:first-child) & {
    --btn-background: var(--base-light);
    --btn-background-hover: var(--base-ultra-light);
    --btn-text-color: var(--base);
    --btn-text-color-hover: var(--base);
    --btn-border-color: var(--base-light);
    --btn-border-color-hover: var(--base-ultra-light);
  }
}
.contact-form__botcheck {
  
  display: none;
}
.contact-form__captcha {
  
  min-block-size: 4.0625rem;
}
.contact-form__status {
  
  inline-size: 100%;
  padding: var(--space-xs) var(--space-s);
  border-inline-start: 4px solid var(--base-light);
  border-radius: var(--radius);
  background-color: color-mix(in oklch, var(--base-light) 12%, transparent);
  color: var(--text-light);
  font-weight: 600;
  &:empty {
    display: none;
  }
  &[data-state="sending"] {
    padding-inline: 0;
    border-inline-start-color: transparent;
    background-color: transparent;
    font-weight: 400;
  }
}
.feature-split__figure {
  
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.feature-split__caption {
  
  font-family: "DM Mono", ui-monospace, monospace;
  font-size: var(--text-xs);
  letter-spacing: 0.04em;
  color: var(--text-dark-muted);
}
.link-row {
  
  border-block-end: 1px solid color-mix(in oklch, currentColor 18%, transparent);
}
.link-row__link {
  
  display: flex;
  align-items: center;
  gap: var(--space-m);
  padding-block: var(--space-m);
  color: var(--text-dark);
  text-decoration: none;
  &:hover {
    color: var(--text-dark);
  }
  &:hover .link-row__icon {
    transform: translateX(0.25rem);
  }
}
.link-row__number {
  
  flex-shrink: 0;
  inline-size: 2.5rem;
  font-family: "DM Mono", ui-monospace, monospace;
  font-size: var(--text-xs);
  letter-spacing: 0.04em;
  color: var(--text-dark-muted);
}
.link-row__body {
  
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: var(--space-xs);
}
.link-row__title {
  
  font-weight: 700;
  letter-spacing: -0.01em;
}
.link-row__text {
  
  font-size: var(--text-s);
  color: var(--text-dark-muted);
}
.link-row__icon {
  
  inline-size: 1.125rem;
  block-size: auto;
  flex-shrink: 0;
  transition: transform var(--transition);
}
.hero__actions {
  
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-s);
  padding-block-start: var(--space-xs);
}
.hero__button {
  
  gap: var(--space-xs);
}
.hero__icon {
  
  inline-size: 1.125rem;
  block-size: auto;
  flex-shrink: 0;
}
.hero__link {
  
  display: inline-flex;
  align-items: center;
  padding: var(--btn-padding-block) var(--btn-padding-inline);
  border: 1.5px solid color-mix(in oklch, var(--text-light) 60%, transparent);
  border-radius: 999px;
  color: var(--text-light);
  font-weight: 600;
  text-decoration: none;
  &:hover {
    color: var(--text-light);
    border-color: var(--text-light);
  }
}
.page-links__inner {
  
  display: grid;
  align-items: start;
  gap: var(--space-xl);
  @media (width >= 56.25rem) {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    gap: var(--space-xxl);
  }
}
.link-list {
  
  display: flex;
  flex-direction: column;
  border-block-start: 1px solid var(--text-dark);
}