/* [project]/styles/fonts.css [app-client] (css) */
@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 62% 125%;
  font-display: swap;
  src: url("/assets/fonts/archivo-latin-ext.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Archivo;
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 62% 125%;
  font-display: swap;
  src: url("/assets/fonts/archivo-latin.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* [project]/styles/site.css [app-client] (css) */
:root {
  --green: #007a2e;
  --green-bright: #009030;
  --green-deep: #04301a;
  --green-mid: #0a5b2a;
  --lime: #9eba00;
  --lime-bright: #bede1a;
  --red: #e01020;
  --red-ink: #c00d1b;
  --sun: #f0f000;
  --ink: #10200c;
  --ink-70: #46543f;
  --ink-45: #646f5d;
  --line: #dfe6da;
  --line-2: #edf1e9;
  --mist: #f3f7f0;
  --white: #fff;
  --r-sm: 6px;
  --r: 12px;
  --r-lg: 20px;
  --shadow: 0 1px 2px #10200c0d, 0 8px 24px -12px #10200c2e;
  --wrap: 1200px;
  --gut: clamp(1rem, 3vw, 1.75rem);
  --fs-display: clamp(2.75rem, 8vw, 5.75rem);
  --fs-h2: clamp(1.75rem, 3.6vw, 2.75rem);
  --fs-h3: 1.1875rem;
  --fs-body: 1.0625rem;
  --fs-sm: .9375rem;
  --fs-xs: .8125rem;
}

html[lang="hu"] {
  --fs-display: clamp(2.5rem, 6.8vw, 5.25rem);
}

@media (min-width: 1100px) {
  :root {
    --wrap: min(80%, 1800px);
  }
}

*, :before, :after {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

:where([id]:not(input, textarea, select, .masthead, .masthead *)) {
  scroll-margin-top: calc(93px + 1.25rem);
}

@media (max-width: 760px) {
  :where([id]:not(input, textarea, select, .masthead, .masthead *)) {
    scroll-margin-top: 1rem;
  }
}

body {
  font-family: Archivo, Helvetica Neue, Arial, sans-serif;
  font-size: var(--fs-body);
  color: var(--ink);
  background: var(--white);
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: antialiased;
  flex-direction: column;
  min-height: 100dvh;
  margin: 0;
  line-height: 1.6;
  display: flex;
}

main {
  flex: 1 0 auto;
}

.footer {
  flex-shrink: 0;
}

h1, h2, h3 {
  letter-spacing: -.028em;
  margin: 0;
  font-weight: 800;
  line-height: 1.04;
}

p {
  max-width: 64ch;
  margin: 0 0 1em;
}

a {
  color: var(--green);
  text-underline-offset: .18em;
}

a:hover {
  color: var(--red-ink);
}

img {
  max-width: 100%;
  display: block;
}

:focus-visible {
  outline: 3px solid var(--green-bright);
  outline-offset: 2px;
  border-radius: 2px;
}

.wrap {
  width: 100%;
  max-width: var(--wrap);
  padding-inline: var(--gut);
  margin-inline: auto;
}

.skip {
  background: var(--ink);
  color: #fff;
  z-index: 100;
  border-radius: var(--r-sm);
  padding: .75rem 1.25rem;
  position: absolute;
  left: -9999px;
}

.skip:focus {
  top: 1rem;
  left: 1rem;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.btn {
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  font-size: var(--fs-sm);
  border: 0;
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  padding: .75rem 1.375rem;
  text-decoration: none;
  transition: background-color .15s, color .15s;
  display: inline-flex;
}

.btn--primary {
  background: var(--green);
  color: #fff;
}

.btn--primary:hover {
  background: var(--green-mid);
  color: #fff;
}

.btn--dark {
  background: var(--ink);
  color: #fff;
}

.btn--dark:hover {
  background: var(--green-deep);
  color: #fff;
}

.btn--lime {
  background: var(--lime-bright);
  color: var(--green-deep);
}

.btn--lime:hover {
  background: var(--sun);
  color: var(--green-deep);
}

.btn--ghost {
  color: var(--ink);
  box-shadow: inset 0 0 0 1.5px var(--line);
  background: none;
}

.btn--ghost:hover {
  background: var(--mist);
  color: var(--ink);
  box-shadow: inset 0 0 0 1.5px var(--ink-45);
}

.btn--sm {
  font-size: var(--fs-xs);
  padding: .5rem 1rem;
}

.btn[disabled] {
  opacity: .45;
  cursor: not-allowed;
}

.btn--onDark {
  color: #fff;
  background: none;
  box-shadow: inset 0 0 0 1.5px #ffffff6b;
}

.btn--onDark:hover {
  color: var(--green-deep);
  background: #fff;
  box-shadow: inset 0 0 0 1.5px #fff;
}

.lang {
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  cursor: pointer;
  color: var(--ink);
  background: none;
  border-radius: 100px;
  padding: .375rem .75rem;
  font-weight: 600;
}

.lang:hover {
  border-color: var(--ink-45);
}

.about__h2 {
  font-size: var(--fs-h2);
  margin-bottom: .75rem;
  font-stretch: 112%;
}

.masthead {
  z-index: 50;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--line);
  background: #ffffffeb;
  position: sticky;
  top: 0;
}

.masthead__inner {
  max-width: var(--wrap);
  padding: .625rem var(--gut);
  align-items: center;
  gap: 1.5rem;
  margin-inline: auto;
  display: flex;
}

.masthead__logo {
  color: inherit;
  align-items: center;
  gap: .75rem;
  text-decoration: none;
  display: flex;
}

.masthead__logo img {
  width: auto;
  height: 72px;
  display: block;
}

.nav {
  align-items: center;
  gap: 1.25rem;
  margin-left: auto;
  display: flex;
}

.nav a:not(.btn) {
  color: var(--ink);
  font-size: var(--fs-sm);
  font-weight: 500;
  text-decoration: none;
}

.nav > * {
  white-space: nowrap;
  flex: none;
}

.nav a:not(.btn):hover {
  color: var(--green);
}

.nav__toggle {
  border: 1.5px solid var(--line);
  cursor: pointer;
  width: 44px;
  height: 44px;
  color: var(--ink);
  background: none;
  border-radius: 10px;
  place-items: center;
  margin-left: auto;
  padding: 0;
  display: none;
}

.nav__toggle:hover {
  border-color: var(--ink-45);
}

.nav__bars {
  width: 20px;
  height: 14px;
  display: block;
  position: relative;
}

.nav__bars span {
  background: currentColor;
  border-radius: 2px;
  height: 2px;
  transition: transform .22s, opacity .12s;
  position: absolute;
  left: 0;
  right: 0;
}

.nav__bars span:first-child {
  top: 0;
}

.nav__bars span:nth-child(2) {
  top: 6px;
}

.nav__bars span:nth-child(3) {
  top: 12px;
}

.nav__toggle[aria-expanded="true"] .nav__bars span:first-child {
  transform: translateY(6px) rotate(45deg);
}

.nav__toggle[aria-expanded="true"] .nav__bars span:nth-child(2) {
  opacity: 0;
}

.nav__toggle[aria-expanded="true"] .nav__bars span:nth-child(3) {
  transform: translateY(-6px) rotate(-45deg);
}

.hero {
  color: #fff;
  z-index: 2;
  background: radial-gradient(circle 29vw at calc(100% - 25vw) -2vw, #9eba004d, #00903024 55%, transparent 100%),
    var(--green-deep);
  position: relative;
}

.hero__inner {
  z-index: 1;
  max-width: var(--wrap);
  padding: clamp(2.25rem, 5.5vw, 4.5rem) var(--gut) clamp(2rem, 4.5vw, 3.5rem);
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  align-items: center;
  gap: clamp(1.75rem, 4vw, 3.25rem);
  margin-inline: auto;
  display: grid;
  position: relative;
}

.hero__inner:after, .hero__inner > div:first-child:after {
  content: "";
  z-index: -1;
  pointer-events: none;
  aspect-ratio: 212 / 150;
  background: #0f4a28;
  position: absolute;
  -webkit-mask: url("/assets/hero-pets.svg") 100% 100% / contain no-repeat;
  mask: url("/assets/hero-pets.svg") 100% 100% / contain no-repeat;
}

.hero__inner:after {
  --gap: clamp(1.75rem, 4vw, 3.25rem);
  height: 9.5rem;
  bottom: 0;
  right: calc(var(--gut) + (100% - 2 * var(--gut) - var(--gap)) * .425 + var(--gap));
}

.hero__inner > div:first-child {
  position: relative;
}

.hero__inner > div:first-child:after {
  height: 5.5rem;
  display: none;
  bottom: 0;
  right: 0;
}

@media (max-width: 900px) {
  .hero__inner:after {
    display: none;
  }

  .hero__inner > div:first-child:after {
    display: block;
  }
}

.hero h1 {
  font-size: var(--fs-display);
  letter-spacing: -.04em;
  text-wrap: balance;
  margin-bottom: 1.5rem;
  font-stretch: 116%;
}

.hero h1 em {
  color: var(--lime-bright);
  font-style: normal;
}

.hero__lede {
  color: #ffffffc7;
  max-width: 38ch;
  font-size: clamp(1.0625rem, 1.6vw, 1.25rem);
}

.hero__actions {
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 2.25rem;
  display: flex;
}

.board {
  border-radius: var(--r-lg);
  background: #ffffff12;
  border: 1px solid #bede1a47;
  padding: 1.5rem;
}

.board__head {
  border-bottom: 1px solid #ffffff29;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  margin-bottom: .25rem;
  padding-bottom: .875rem;
  display: flex;
}

.board__title {
  font-size: 1.0625rem;
  font-weight: 800;
  font-stretch: 110%;
}

.board__date {
  font-size: var(--fs-xs);
  color: var(--lime-bright);
}

.board__row {
  font-size: var(--fs-sm);
  border-bottom: 1px solid #ffffff17;
  grid-template-columns: 1fr auto;
  align-items: baseline;
  gap: 1rem;
  max-width: none;
  padding: .5625rem 0;
  display: grid;
}

.board__row:last-of-type {
  border-bottom: 0;
}

.board__crop {
  font-weight: 500;
}

.board__moist {
  color: #ffffff80;
  font-size: var(--fs-xs);
}

.board__price {
  color: var(--lime-bright);
  white-space: nowrap;
  font-size: 1.1875rem;
  font-weight: 800;
}

.board__unit {
  font-size: var(--fs-xs);
  color: #bede1ab8;
  margin-left: .3125rem;
  font-weight: 600;
}

.board__foot {
  font-size: var(--fs-xs);
  color: #ffffff8c;
  margin: .875rem 0 0;
}

.section {
  padding-block: clamp(2.25rem, 5vw, 3.75rem);
}

.section--mist {
  background: var(--mist);
}

.section__head {
  max-width: 60ch;
  margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

.section h2 {
  font-size: var(--fs-h2);
  margin-bottom: .75rem;
  font-stretch: 112%;
}

.section__sub {
  color: var(--ink-70);
  margin: 0;
}

.cat-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(17.5rem, 100%), 1fr));
  gap: 1rem;
  display: grid;
}

.cat {
  color: inherit;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  text-decoration: none;
  transition: border-color .15s, box-shadow .15s;
  display: block;
  overflow: hidden;
}

.cat:hover {
  border-color: var(--green-bright);
  box-shadow: var(--shadow);
  color: inherit;
}

.cat__photo {
  aspect-ratio: 3 / 2;
  background: var(--mist);
  display: block;
  position: relative;
}

.cat__photo img.cat__img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.cat:hover .cat__photo img.cat__img {
  filter: saturate(1.06);
}

.cat__body {
  padding: 1rem 1.125rem 1.125rem;
  display: block;
}

.cat__top {
  align-items: center;
  gap: 1rem;
  margin-bottom: .875rem;
  display: flex;
}

.cat__photo .cat__mark {
  z-index: 1;
  width: 56px;
  height: 56px;
  box-shadow: 0 0 0 3px var(--white);
  position: absolute;
  bottom: -22px;
  left: 1rem;
}

.cat__photo .cat__mark img {
  width: 36px;
  height: 36px;
}

.cat__mark {
  background: var(--green-deep);
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 76px;
  height: 76px;
  display: grid;
}

.cat__mark img {
  filter: brightness(0) invert();
  opacity: .95;
  width: 50px;
  height: 50px;
}

.cat__photo + .cat__body {
  padding-top: 1.5rem;
}

.cat__name {
  font-size: var(--fs-h3);
  font-weight: 800;
  font-stretch: 106%;
}

.cat__count {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  letter-spacing: 0;
  font-weight: 500;
}

.cat__codes {
  flex-wrap: wrap;
  gap: .3125rem;
  display: flex;
}

.code {
  border-radius: var(--r-sm);
  background: var(--mist);
  color: var(--ink-70);
  white-space: nowrap;
  padding: .1875rem .4375rem;
  font-size: .75rem;
  font-weight: 700;
  font-stretch: 94%;
  display: inline-block;
}

.section--mist .code {
  background: var(--white);
}

.spot {
  grid-template-columns: repeat(auto-fit, minmax(min(20rem, 100%), 1fr));
  gap: 1rem;
  display: grid;
}

.spot__item {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  color: inherit;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  align-items: center;
  gap: 1rem;
  text-decoration: none;
  transition: border-color .15s, box-shadow .15s;
  display: grid;
  overflow: hidden;
}

.spot__item:hover {
  border-color: var(--green-bright);
  box-shadow: var(--shadow);
  color: inherit;
}

.spot__media {
  background: var(--mist);
  aspect-ratio: 4 / 5;
}

.spot__media img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

.spot__body {
  padding: 1.25rem 1.375rem 1.25rem 0;
}

.spot__kicker {
  font-size: var(--fs-xs);
  color: var(--green);
  margin-bottom: .375rem;
  font-weight: 700;
  display: block;
}

.spot__name {
  margin-bottom: .5rem;
  font-size: 1.25rem;
  font-weight: 800;
  font-stretch: 106%;
  line-height: 1.1;
  display: block;
}

.spot__desc {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin: 0 0 .875rem;
}

.spot__packs {
  flex-wrap: wrap;
  gap: .3125rem;
  display: flex;
}

@media (max-width: 420px) {
  .spot__item {
    grid-template-columns: 1fr;
  }

  .spot__media {
    aspect-ratio: 16 / 10;
  }

  .spot__body {
    padding: 0 1.25rem 1.25rem;
  }
}

.cat__photo--pack {
  background: #fff;
}

.ways {
  grid-template-columns: 1fr;
  gap: 1rem;
  display: grid;
}

.way {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  flex-direction: column;
  padding: 1.375rem 1.5rem;
  display: flex;
}

@media (min-width: 720px) {
  .way {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    column-gap: 2rem;
    padding: 1.25rem 1.5rem;
    display: grid;
  }

  .way h3 {
    grid-column: 1;
    margin-bottom: .25rem;
  }

  .way p {
    grid-column: 1;
    max-width: 60ch;
    margin-bottom: 0;
  }

  .way .btn {
    white-space: nowrap;
    grid-area: 1 / 2 / span 2;
    margin-top: 0;
  }
}

.way--feature {
  background: var(--green-deep);
  border-color: var(--green-deep);
  color: #fff;
}

.way h3 {
  margin-bottom: .5rem;
  font-size: 1.3125rem;
  font-stretch: 108%;
}

.way p {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin-bottom: 1.5rem;
}

.way--feature p {
  color: #ffffffd1;
}

.way .btn {
  align-self: flex-start;
  margin-top: auto;
}

.about {
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  align-items: start;
  gap: clamp(2rem, 5vw, 4rem);
  display: grid;
}

.facts {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  margin: 0;
  overflow: hidden;
}

.fact {
  border-bottom: 1px solid var(--line-2);
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 1rem 1.25rem;
  display: flex;
}

.fact:last-child {
  border-bottom: 0;
}

.fact dt {
  color: var(--ink-70);
  font-size: var(--fs-sm);
}

.fact dd {
  color: var(--green);
  margin: 0;
  font-size: 1.375rem;
  font-weight: 800;
  font-stretch: 108%;
}

.contact-grid {
  grid-template-columns: 1fr;
  align-items: start;
  gap: clamp(1.5rem, 4vw, 2.5rem);
  display: grid;
}

@media (min-width: 1100px) {
  .contact-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch;
  }

  .contact-grid > .staff-wrap {
    height: 100%;
  }
}

.contact-block dt {
  color: var(--ink-45);
  font-size: var(--fs-xs);
  margin-top: 1rem;
}

.contact-block dt:first-child {
  margin-top: 0;
}

.contact-block dd {
  margin: 0;
}

.contact-block dd a {
  font-weight: 700;
}

.staff-wrap {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  overflow: hidden;
}

.staff {
  border-collapse: collapse;
  width: 100%;
  font-size: var(--fs-sm);
}

.staff thead {
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}

.staff tr {
  border-top: 1px solid var(--line-2);
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0 1rem;
  padding: .875rem 1.125rem;
  display: grid;
}

.staff tbody tr:first-child {
  border-top: 0;
}

.staff td {
  border: 0;
  padding: 0;
  display: block;
}

.staff td[data-label="role"] {
  font-size: var(--fs-xs);
  color: var(--green);
  grid-column: 1;
  margin-bottom: .125rem;
  font-weight: 700;
}

.staff td[data-label="person"] {
  letter-spacing: -.015em;
  grid-column: 1;
  font-size: 1.0625rem;
  font-weight: 800;
  font-stretch: 106%;
}

.staff td[data-label="hours"] {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  font-variant-numeric: tabular-nums;
  grid-column: 1;
}

.staff td[data-label="phone"] {
  text-align: right;
  grid-area: 1 / 2 / span 3;
  align-self: center;
}

.staff td[data-label="phone"] a {
  white-space: nowrap;
  padding-block: .375rem;
  font-weight: 700;
  display: inline-block;
}

.staff--credits td:nth-child(2n) {
  text-align: right;
}

.crumbs {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  flex-wrap: wrap;
  align-items: center;
  gap: .4375rem;
  padding-top: .875rem;
  display: flex;
}

.crumbs a {
  color: var(--ink-70);
  padding-block: .375rem;
  text-decoration: none;
  display: inline-block;
}

.crumbs a:hover {
  color: var(--green);
  text-decoration: underline;
}

.crumbs__sep {
  color: var(--ink-45);
}

.prod-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(15rem, 100%), 1fr));
  gap: 1rem;
  display: grid;
}

.prod {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  color: inherit;
  flex-direction: column;
  text-decoration: none;
  transition: border-color .15s, box-shadow .15s;
  display: flex;
  overflow: hidden;
}

.prod:hover {
  border-color: var(--green-bright);
  box-shadow: var(--shadow);
  color: inherit;
}

@media (max-width: 560px) {
  .prod-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .625rem;
  }

  .prod__name {
    padding: .625rem .75rem .25rem;
    font-size: .8125rem;
  }

  .prod__price {
    padding: 0 .75rem .375rem;
  }

  .prod__more {
    padding: 0 .75rem .75rem;
  }
}

.prod__name {
  font-weight: 700;
  font-size: var(--fs-sm);
  padding: .875rem 1rem .25rem;
  line-height: 1.25;
}

.prod__more {
  font-size: var(--fs-xs);
  color: var(--green);
  margin-top: auto;
  padding: 0 1rem 1rem;
  font-weight: 700;
}

.shot {
  aspect-ratio: 3 / 2;
  background: var(--mist);
  display: block;
  position: relative;
}

.shot img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.shot--missing {
  background: repeating-linear-gradient(135deg, var(--mist), var(--mist) 10px, #edf2e8 10px, #edf2e8 20px);
  place-items: center;
  display: grid;
}

.shot__ph {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  text-align: center;
  letter-spacing: .01em;
  padding: .5rem;
  font-weight: 800;
}

.shot--big {
  aspect-ratio: 4 / 3;
  border-radius: var(--r);
  overflow: hidden;
}

.detail {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: start;
  gap: clamp(1.5rem, 4vw, 3rem);
  display: grid;
}

.detail__media {
  background: var(--mist);
  border: 1px solid var(--line);
  border-radius: var(--r);
  overflow: hidden;
}

.detail__media img {
  object-fit: contain;
  background: var(--white);
  width: 100%;
  height: auto;
  display: block;
}

.detail__imgnote {
  text-align: center;
  font-size: var(--fs-sm);
  color: var(--ink-45);
  margin: 0;
  padding: 3rem 1.25rem;
}

.detail__cat {
  font-size: var(--fs-xs);
  color: var(--green);
  margin: 0 0 .375rem;
  font-weight: 700;
}

.detail__name {
  margin-bottom: 1.25rem;
  font-size: clamp(1.5rem, 3vw, 2.125rem);
  font-stretch: 110%;
}

.detail__p {
  font-size: var(--fs-sm);
  margin-bottom: .75rem;
}

.detail__label {
  font-size: var(--fs-sm);
  margin: 1.5rem 0 .5rem;
  font-weight: 800;
  font-stretch: 106%;
}

.detail__spec {
  font-size: var(--fs-sm);
  margin-bottom: .5rem;
  line-height: 1.55;
}

.detail__spec strong {
  font-weight: 800;
}

.detail__pending {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  background: var(--mist);
  border-left: 3px solid var(--lime);
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  padding: .875rem 1rem;
}

.detail__actions {
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 2rem;
  display: flex;
}

.katalog {
  background: var(--mist);
  border: 1px solid var(--line);
  border-radius: var(--r);
  align-items: center;
  gap: clamp(1rem, 3vw, 2rem);
  margin-top: 2.5rem;
  padding: clamp(1rem, 3vw, 1.75rem);
  display: flex;
}

.katalog[hidden] {
  display: none;
}

.katalog__cover {
  flex: none;
  width: clamp(5.5rem, 16vw, 9rem);
}

.katalog__cover img {
  border-radius: var(--r-sm);
  width: 100%;
  height: auto;
  display: block;
  box-shadow: 0 6px 18px #04301a2e;
}

.katalog .katalog__h {
  margin: 0 0 .5rem;
  font-size: clamp(1.25rem, 2.2vw, 1.5rem);
  font-stretch: 108%;
}

.katalog__p {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  max-width: 60ch;
  margin: 0 0 1rem;
}

.katalog .btn {
  white-space: nowrap;
}

@media (max-width: 560px) {
  .katalog {
    grid-template-columns: 4.5rem 1fr;
    align-items: center;
    gap: .875rem 1rem;
    display: grid;
  }

  .katalog__cover {
    width: 4.5rem;
  }

  .katalog__body {
    display: contents;
  }

  .katalog .katalog__h {
    margin: 0;
  }

  .katalog__p, .katalog .btn {
    grid-column: 1 / -1;
    margin: 0;
  }

  .katalog .btn {
    justify-self: start;
  }
}

.spec {
  grid-column: 1 / -1;
  min-width: 0;
}

.spec__h {
  font-size: var(--fs-sm);
  margin: 0 0 .375rem;
  font-weight: 800;
  font-stretch: 106%;
}

.spec__note {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  margin: 0 0 .75rem;
}

.spec__swipe {
  font-size: var(--fs-xs);
  color: var(--green);
  margin: -.375rem 0 .625rem;
  font-weight: 700;
}

.spec__wrap {
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--white);
  width: fit-content;
  max-width: 100%;
  overflow-x: auto;
}

.spec__wrap:focus-visible {
  outline: 2px solid var(--green);
  outline-offset: 2px;
}

.spec__table {
  border-collapse: collapse;
  width: auto;
  min-width: min(100%, 34rem);
  font-size: var(--fs-sm);
  font-variant-numeric: tabular-nums;
}

.spec__table thead th {
  background: var(--ink);
  color: #fff;
  font-size: var(--fs-xs);
  text-align: center;
  vertical-align: bottom;
  padding: .5625rem .625rem;
  font-weight: 700;
  line-height: 1.25;
}

.spec__table thead .spec__corner {
  text-align: left;
}

.spec__table tbody th {
  text-align: left;
  min-width: 10rem;
  padding: .4375rem .625rem;
  font-weight: 600;
}

.spec__table tbody th, .spec__table thead .spec__corner {
  z-index: 1;
  box-shadow: 1px 0 0 var(--line);
  position: sticky;
  left: 0;
}

.spec__table tbody th {
  background: var(--white);
}

.spec__table thead .spec__corner {
  background: var(--ink);
}

@media (max-width: 560px) {
  .spec__table tbody th {
    min-width: 8.5rem;
  }
}

.spec__table tbody td {
  text-align: center;
  white-space: nowrap;
  padding: .4375rem .625rem;
}

.spec__table tbody tr + tr > * {
  border-top: 1px solid var(--line-2);
}

.spec__table tr.is-text > * {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  white-space: normal;
  background: var(--mist);
  min-width: 6.5rem;
  line-height: 1.35;
}

.spec__table tr.is-text > th {
  color: var(--ink);
}

.spec__table thead th.is-mine {
  background: var(--green);
}

.spec__table td.is-mine {
  color: var(--green-deep);
  background: #eef6e4;
  font-weight: 800;
}

.spec__table tr.is-text > td.is-mine {
  background: #e3f0d6;
}

.spec__this {
  color: var(--lime-bright);
  text-transform: lowercase;
  margin-top: .25rem;
  font-size: .6875rem;
  font-weight: 700;
  display: block;
}

.detail__aside {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.detail__aside .offer, .detail__aside .detail__actions {
  margin-top: 1.25rem;
}

@media (max-width: 760px) {
  .detail {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
  }

  .detail__aside, .detail__body {
    display: contents;
  }

  .detail__media {
    order: 1;
  }

  .detail__cat {
    order: 2;
    margin-bottom: -.75rem;
  }

  .detail__name {
    order: 3;
    margin-bottom: 0;
  }

  #detail-offer {
    order: 4;
  }

  #detail-offer .offer {
    margin-top: 0;
  }

  .detail__aside .detail__actions {
    order: 5;
    margin-top: 0;
  }

  #detail-desc, .detail__pending {
    order: 6;
  }

  .spec {
    order: 7;
  }

  .spec__wrap {
    width: auto;
  }
}

.stores-toolbar {
  top: var(--top-masthead, 69px);
  z-index: 30;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-block: 1px solid var(--line);
  background: #f3f7f0f0;
  padding-block: .875rem;
  position: sticky;
}

.stores-toolbar__inner {
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem;
  display: flex;
}

.stores-count {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  white-space: nowrap;
  margin: 0;
}

.viewswitch {
  gap: .375rem;
  margin-left: auto;
  display: flex;
}

.stores {
  grid-template-columns: repeat(auto-fill, minmax(min(17rem, 100%), 1fr));
  gap: 1rem;
  display: grid;
}

.store {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  flex-direction: column;
  padding: 1.25rem;
  display: flex;
}

.store__name {
  letter-spacing: -.01em;
  margin-bottom: .5rem;
  font-size: 1rem;
  font-weight: 800;
  font-stretch: 106%;
  line-height: 1.2;
}

.store__addr {
  font-size: var(--fs-sm);
  margin: 0;
}

.store__town {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin: 0 0 .875rem;
}

.store__foot {
  font-size: var(--fs-sm);
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .875rem;
  margin: auto 0 0;
  display: flex;
}

.store__foot a {
  font-weight: 700;
  text-decoration: none;
}

.store__foot a:hover {
  text-decoration: underline;
}

.store__map {
  font-size: var(--fs-xs);
}

.store__nophone {
  color: var(--ink-45);
  font-size: var(--fs-xs);
}

.store__hq {
  border-top: 1px solid var(--line-2);
  font-size: var(--fs-xs);
  color: var(--ink-45);
  margin: .75rem 0 0;
  padding-top: .625rem;
}

.map-card {
  border: 1px solid var(--line);
  border-radius: var(--r);
  background: var(--white);
  overflow: hidden;
}

.map-card iframe {
  border: 0;
  width: 100%;
  height: min(60vh, 480px);
  display: block;
}

.map-card--top .map-gate {
  padding-block: clamp(2rem, 6vw, 3.5rem);
}

@media (max-width: 560px) {
  .map-card iframe {
    height: 340px;
  }
}

.map-note {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  margin: .875rem 0 0;
}

@media (max-width: 760px) {
  .stores-toolbar {
    top: 0;
  }

  .viewswitch {
    margin-left: 0;
  }

  .stores-count {
    order: 3;
    width: 100%;
  }
}

.consent {
  z-index: 80;
  background: var(--ink);
  color: #fff;
  padding-block: 1rem;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  box-shadow: 0 -8px 24px -12px #00000080;
}

.consent__inner {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1rem 2rem;
  display: flex;
}

.consent__title {
  font-weight: 800;
  font-stretch: 108%;
  font-size: var(--fs-sm);
  margin: 0 0 .25rem;
}

.consent__text {
  font-size: var(--fs-sm);
  color: #fffc;
  max-width: 72ch;
  margin: 0;
}

.consent__text a {
  color: var(--lime-bright);
}

.consent__actions {
  flex-wrap: wrap;
  gap: .5rem;
  display: flex;
}

.consent .btn--ghost {
  color: #fff;
  box-shadow: inset 0 0 0 1.5px #ffffff73;
}

.consent .btn--ghost:hover {
  color: var(--ink);
  background: #fff;
}

.map-gate {
  text-align: center;
  background: var(--mist);
  place-items: center;
  gap: .875rem;
  padding: clamp(2.5rem, 8vw, 5rem) 1.25rem;
  display: grid;
}

.map-gate__text {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  max-width: 44ch;
  margin: 0;
}

.contact-right {
  gap: 1.25rem;
  display: grid;
}

.cform {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: clamp(1.25rem, 3vw, 1.75rem);
}

.cform__h {
  font-size: var(--fs-h3);
  margin-bottom: .25rem;
  font-stretch: 108%;
}

.cform__sub {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin-bottom: 1.25rem;
}

.cform__grid {
  grid-template-columns: repeat(auto-fit, minmax(min(12rem, 100%), 1fr));
  gap: 0 1rem;
  display: grid;
}

.cform__grid .field--wide {
  grid-column: 1 / -1;
}

.cform textarea {
  width: 100%;
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--white);
  color: var(--ink);
  resize: vertical;
  padding: .6875rem .8125rem;
}

.cform textarea:focus {
  border-color: var(--green-bright);
  outline: 3px solid #00903029;
}

.cform .check {
  margin: .5rem 0 1.25rem;
}

.cform__hp {
  width: 1px;
  height: 1px;
  position: absolute;
  left: -9999px;
  overflow: hidden;
}

.cform__done {
  font-size: var(--fs-sm);
  border-left: 3px solid var(--green);
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  background: #eff7ea;
  margin: 1rem 0 0;
  padding: .75rem .875rem;
}

.field:has( > input[required]) > label:after {
  content: " *";
  color: var(--red-ink);
  font-weight: 800;
}

.field:has( > textarea[required]) > label:after {
  content: " *";
  color: var(--red-ink);
  font-weight: 800;
}

.field:has( > select[required]) > label:after {
  content: " *";
  color: var(--red-ink);
  font-weight: 800;
}

.check:has(input[required]) > span:after {
  content: " *";
  color: var(--red-ink);
  font-weight: 800;
}

.reqnote {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  margin: 0 0 1.25rem;
}

.reqnote b {
  color: var(--red-ink);
  font-weight: 800;
}

.prose {
  max-width: 46rem;
}

.prose h2 {
  margin: 2rem 0 .5rem;
  font-size: 1.25rem;
  font-stretch: 108%;
}

.prose p {
  font-size: var(--fs-body);
}

.notice {
  background: var(--mist);
  border-left: 3px solid var(--lime);
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  font-size: var(--fs-sm);
  color: var(--ink-70);
  padding: .875rem 1rem;
}

@media (max-width: 900px) {
  .consent__inner {
    flex-direction: column;
    align-items: stretch;
  }

  .consent__actions .btn {
    flex: auto;
  }
}

.footer {
  background: var(--green-deep);
  color: #fffc;
  padding-block: 2.5rem 1.5rem;
}

.footer a {
  color: #fff;
  text-decoration: none;
}

.footer a:hover {
  color: var(--lime-bright);
  text-decoration: underline;
}

.footer {
  isolation: isolate;
  position: relative;
  overflow: hidden;
}

.footer:before, .footer:after {
  content: "";
  z-index: -1;
  pointer-events: none;
  background: #0f4a28;
  height: min(15rem, 100%);
  position: absolute;
  bottom: 0;
}

.footer:before {
  aspect-ratio: 299 / 150;
  left: max(0rem, 50% - 44rem);
  -webkit-mask: url("/assets/footer-animals-left.svg") 0 100% / contain no-repeat;
  mask: url("/assets/footer-animals-left.svg") 0 100% / contain no-repeat;
}

.footer:after {
  aspect-ratio: 270 / 150;
  right: max(0rem, 50% - 44rem);
  -webkit-mask: url("/assets/footer-animals-right.svg") 100% 100% / contain no-repeat;
  mask: url("/assets/footer-animals-right.svg") 100% 100% / contain no-repeat;
}

@media (max-width: 760px) {
  .footer:before, .footer:after {
    width: min(42%, 17rem);
    height: auto;
  }
}

.footer__grid {
  grid-template-columns: repeat(auto-fit, minmax(min(13rem, 100%), 1fr));
  gap: 2rem;
  display: grid;
}

.footer h3 {
  font-size: var(--fs-xs);
  color: var(--lime-bright);
  letter-spacing: 0;
  margin-bottom: .875rem;
  font-weight: 700;
}

.footer ul {
  font-size: var(--fs-sm);
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer li {
  margin-bottom: .125rem;
}

.footer__reg {
  color: #ffffff9e;
  font-size: var(--fs-xs);
  margin-top: .5rem;
  line-height: 1.5;
}

.footer__social {
  gap: .5rem;
  margin: 1rem 0 0;
  display: flex;
}

.footer__social a {
  color: #fff;
  background: #ffffff1a;
  border-radius: 50%;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  transition: background-color .15s, color .15s;
  display: grid;
}

.footer__social a:hover {
  background: var(--lime-bright);
  color: var(--green-deep);
  text-decoration: none;
}

.footer__social a:focus-visible {
  outline: 3px solid var(--lime-bright);
  outline-offset: 2px;
}

.footer li a, .footer li > span {
  padding-block: .4375rem;
  display: inline-block;
}

.footer__legal {
  font-size: var(--fs-xs);
  color: #ffffff8c;
  border-top: 1px solid #ffffff24;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .5rem 1.5rem;
  margin-top: 2rem;
  padding-top: 1.25rem;
  display: flex;
}

.b2b-body {
  background: var(--mist);
}

.login-shell {
  min-height: 100%;
  padding: clamp(1.5rem, 5vw, 3.5rem) var(--gut);
  place-items: center;
  display: grid;
}

.login {
  background: var(--white);
  border-radius: var(--r-lg);
  width: 100%;
  max-width: 64rem;
  box-shadow: var(--shadow);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  display: grid;
  overflow: hidden;
}

.login__aside {
  background: var(--green-deep);
  color: #fff;
  padding: clamp(1.75rem, 4vw, 3rem);
  position: relative;
  overflow: hidden;
}

.login__aside:after {
  content: "";
  background: radial-gradient(circle, #9eba0040, #0000 70%);
  border-radius: 50%;
  width: 80%;
  height: 80%;
  position: absolute;
  bottom: -30%;
  right: -30%;
}

.login__aside > * {
  z-index: 1;
  position: relative;
}

.login__aside h2 {
  margin-bottom: 1rem;
  font-size: clamp(1.5rem, 2.8vw, 2.125rem);
  font-stretch: 112%;
}

.login__aside p {
  color: #ffffffc7;
  font-size: var(--fs-sm);
}

.login__aside strong {
  color: var(--lime-bright);
}

.login__list {
  font-size: var(--fs-sm);
  margin: 1.75rem 0 0;
  padding: 0;
  list-style: none;
}

.login__list li {
  border-top: 1px solid #ffffff29;
  padding: .625rem 0 .625rem 1.5rem;
  position: relative;
}

.login__list li:before {
  content: "";
  background: var(--lime-bright);
  border-radius: 50%;
  width: 7px;
  height: 7px;
  position: absolute;
  top: 1.1875rem;
  left: 0;
}

.login__form {
  padding: clamp(1.75rem, 4vw, 3rem);
}

.login__form h1 {
  margin-bottom: .5rem;
  font-size: clamp(1.5rem, 2.8vw, 2.125rem);
  font-stretch: 112%;
}

.login__hint {
  color: var(--ink-70);
  font-size: var(--fs-sm);
  margin-bottom: 1.75rem;
}

.field {
  margin-bottom: 1.125rem;
}

.field label {
  font-size: var(--fs-xs);
  margin-bottom: .375rem;
  font-weight: 700;
  display: block;
}

.field input, .field select {
  width: 100%;
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--white);
  color: var(--ink);
  padding: .6875rem .8125rem;
}

.field input:focus, .field select:focus {
  border-color: var(--green-bright);
  outline-offset: 0;
  outline: 3px solid #00903029;
}

.field__note {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  margin: .375rem 0 0;
}

.alert {
  border-left: 4px solid var(--red);
  color: var(--red-ink);
  font-size: var(--fs-sm);
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  background: #fdf0f1;
  margin-bottom: 1.125rem;
  padding: .75rem .875rem;
}

.alert[hidden] {
  display: none;
}

.cselect {
  position: relative;
}

.cselect__native {
  opacity: 0;
  pointer-events: none;
  width: 1px;
  height: 1px;
  position: absolute;
}

.cselect__btn {
  width: 100%;
  font: inherit;
  font-size: var(--fs-sm);
  text-align: left;
  cursor: pointer;
  border: 1.5px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--white);
  color: var(--ink);
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  padding: .6875rem .8125rem;
  transition: border-color .12s;
  display: flex;
}

.cselect__btn:hover {
  border-color: var(--ink-45);
}

.cselect__btn[aria-expanded="true"] {
  border-color: var(--green-bright);
}

.cselect__btn:disabled {
  cursor: default;
  opacity: .6;
}

.cselect__btn:disabled:hover {
  border-color: var(--line);
}

.cselect__btn[aria-invalid="true"] {
  border-color: #c0392b;
}

.cselect--pill .cselect__btn {
  border-radius: 100px;
  padding-inline: 1rem;
}

.cselect.is-empty .cselect__value {
  color: var(--ink-45);
}

.cselect__value {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.cselect__chev {
  border-right: 2px solid var(--ink-45);
  border-bottom: 2px solid var(--ink-45);
  flex: none;
  width: 9px;
  height: 9px;
  margin-right: 1px;
  transition: transform .18s;
  transform: translateY(-2px) rotate(45deg);
}

.cselect__btn[aria-expanded="true"] .cselect__chev {
  transform: translateY(2px) rotate(-135deg);
}

.cselect__list {
  z-index: 60;
  overscroll-behavior: contain;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  max-height: 17rem;
  box-shadow: var(--shadow);
  margin: 0;
  padding: .25rem;
  list-style: none;
  position: absolute;
  top: calc(100% + 5px);
  left: 0;
  right: 0;
  overflow-y: auto;
}

.cselect__opt {
  border-radius: var(--r-sm);
  cursor: pointer;
  font-size: var(--fs-sm);
  padding: .5rem .625rem;
  line-height: 1.35;
}

.cselect__opt:hover, .cselect__opt.is-active {
  background: var(--mist);
}

.cselect__opt[aria-selected="true"] {
  color: var(--green);
  font-weight: 700;
}

.cselect__opt[aria-selected="true"]:after {
  content: "";
}

.reg-wrap {
  padding-block: clamp(1.25rem, 3vw, 2.25rem);
}

.steps {
  flex-wrap: wrap;
  gap: .5rem 1.5rem;
  margin: 0 0 1.75rem;
  padding: 0;
  list-style: none;
  display: flex;
}

.steps__item {
  font-size: var(--fs-sm);
  color: var(--ink-45);
  align-items: center;
  gap: .5rem;
  display: flex;
}

.steps__n {
  background: var(--line-2);
  width: 26px;
  height: 26px;
  color: var(--ink-45);
  font-size: var(--fs-xs);
  border-radius: 50%;
  place-items: center;
  font-weight: 800;
  display: grid;
}

.steps__item.is-current {
  color: var(--ink);
  font-weight: 700;
}

.steps__item.is-current .steps__n {
  background: var(--green);
  color: #fff;
}

.steps__item.is-done .steps__n {
  background: var(--lime-bright);
  color: var(--green-deep);
}

.steps__item.is-done {
  color: var(--ink-70);
}

.regcard {
  background: var(--white);
  border-radius: var(--r-lg);
  box-shadow: var(--shadow);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  display: grid;
  overflow: hidden;
}

.regcard__aside {
  background: var(--green-deep);
  color: #fff;
  padding: clamp(1.75rem, 4vw, 3rem);
}

.regcard__aside h2 {
  margin-bottom: 1rem;
  font-size: clamp(1.4rem, 2.6vw, 1.9rem);
  font-stretch: 112%;
}

.regcard__aside p {
  color: #fffc;
  font-size: var(--fs-sm);
}

.regcard__form {
  padding: clamp(1.75rem, 4vw, 3rem);
}

.regcard__form h1 {
  margin-bottom: .5rem;
  font-size: clamp(1.5rem, 2.8vw, 2.125rem);
  font-stretch: 112%;
}

.reg-phone {
  margin: 1.25rem 0 .25rem;
  font-size: 1.5rem;
  font-weight: 800;
  font-stretch: 110%;
}

.reg-phone a {
  color: var(--lime-bright);
  text-decoration: none;
}

.reg-phone a:hover {
  text-decoration: underline;
}

.reg-hours {
  font-size: var(--fs-xs);
  color: #ffffff9e;
}

.types {
  grid-template-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr));
  gap: 1rem;
  display: grid;
}

.type {
  text-align: left;
  font: inherit;
  cursor: pointer;
  background: var(--white);
  border: 1.5px solid var(--line);
  border-radius: var(--r);
  flex-direction: column;
  align-items: flex-start;
  gap: .375rem;
  padding: 1.5rem;
  transition: border-color .15s, box-shadow .15s;
  display: flex;
}

.type:hover {
  border-color: var(--green-bright);
  box-shadow: var(--shadow);
}

.type__name {
  letter-spacing: -.02em;
  font-size: 1.1875rem;
  font-weight: 800;
  font-stretch: 106%;
}

.type__desc {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin-bottom: .5rem;
}

.regform {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: clamp(1.25rem, 3vw, 2rem);
}

.regform__grid {
  grid-template-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr));
  gap: 0 1.25rem;
  display: grid;
}

.regform__grid .field--wide {
  grid-column: 1 / -1;
}

.regform__consent {
  border-top: 1px solid var(--line-2);
  margin-top: .75rem;
  padding-top: 1.25rem;
}

.check {
  font-size: var(--fs-sm);
  cursor: pointer;
  align-items: flex-start;
  gap: .625rem;
  display: flex;
}

.check input {
  width: 20px;
  height: 20px;
  accent-color: var(--green);
  flex: none;
  margin: 1px 0 0;
}

.regform__actions {
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1.5rem;
  display: flex;
}

@media (max-width: 760px) {
  .regcard {
    grid-template-columns: 1fr;
  }
}

.toolbar__top {
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem 1.25rem;
  width: 100%;
  display: flex;
}

.toolbar__top .search {
  flex: 18rem;
}

.switch {
  cursor: pointer;
  font-size: var(--fs-sm);
  white-space: nowrap;
  -webkit-user-select: none;
  user-select: none;
  align-items: center;
  gap: .625rem;
  font-weight: 600;
  display: inline-flex;
}

.switch input {
  opacity: 0;
  width: 1px;
  height: 1px;
  position: absolute;
}

.switch__track {
  background: var(--line);
  border-radius: 100px;
  flex: none;
  width: 40px;
  height: 24px;
  transition: background-color .16s;
  position: relative;
}

.switch__track:after {
  content: "";
  background: #fff;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  transition: transform .16s;
  position: absolute;
  top: 3px;
  left: 3px;
  box-shadow: 0 1px 2px #10200c40;
}

.switch input:checked + .switch__track {
  background: var(--green);
}

.switch input:checked + .switch__track:after {
  transform: translateX(16px);
}

.switch input:focus-visible + .switch__track {
  outline: 3px solid var(--green-bright);
  outline-offset: 2px;
}

.switch__count {
  background: var(--white);
  border: 1px solid var(--line);
  min-width: 1.5rem;
  font-size: var(--fs-xs);
  text-align: center;
  font-variant-numeric: tabular-nums;
  border-radius: 100px;
  padding: .0625rem .4375rem;
  font-weight: 800;
}

.switch input:checked ~ .switch__count {
  background: var(--green);
  border-color: var(--green);
  color: #fff;
}

.confirm {
  border-radius: var(--r-lg);
  width: min(44rem, 100% - 2rem);
  max-height: min(88vh, 52rem);
  color: var(--ink);
  border: 0;
  padding: 0;
  box-shadow: 0 24px 60px -20px #10200c73;
}

.confirm::backdrop {
  background: #10200c8c;
}

.confirm[open] {
  animation: .2s ease-out backwards fc-rise;
}

.confirm__inner {
  max-height: inherit;
  flex-direction: column;
  display: flex;
}

.confirm__head {
  padding: 1.5rem 1.5rem .75rem;
}

.confirm__head h2 {
  margin-bottom: .25rem;
  font-size: 1.5rem;
  font-stretch: 110%;
}

.confirm__sub {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin: 0;
}

.confirm__meta {
  background: var(--mist);
  font-size: var(--fs-sm);
  grid-template-columns: auto minmax(0, 1fr);
  gap: .25rem 1rem;
  margin: 0;
  padding: .875rem 1.5rem;
  display: grid;
}

.confirm__meta dt {
  color: var(--ink-70);
}

.confirm__meta dd {
  margin: 0;
  font-weight: 600;
}

.confirm__meta dd.is-missing {
  color: var(--red-ink);
  font-style: italic;
  font-weight: 500;
}

.confirm__list {
  flex: auto;
  min-height: 6rem;
  margin: 0;
  padding: .25rem 1.5rem;
  list-style: none;
  overflow-y: auto;
}

.confirm__line {
  border-top: 1px solid var(--line-2);
  font-size: var(--fs-sm);
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: baseline;
  gap: .25rem 1rem;
  padding: .625rem 0;
  display: grid;
}

.confirm__line:first-child {
  border-top: 0;
}

.confirm__what {
  min-width: 0;
}

.confirm__what strong {
  display: block;
}

.confirm__name {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  display: block;
}

.confirm__how {
  color: var(--ink-70);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.confirm__kg {
  white-space: nowrap;
  text-align: right;
  font-variant-numeric: tabular-nums;
  min-width: 5rem;
  font-weight: 800;
}

.confirm__total {
  border-top: 2px solid var(--ink);
  text-align: right;
  margin: 0;
  padding: .875rem 1.5rem;
  font-weight: 800;
  font-stretch: 108%;
}

.confirm__actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .5rem;
  padding: 1rem 1.5rem 1.5rem;
  display: flex;
}

@media (max-width: 560px) {
  .confirm__summary {
    grid-template-columns: 1fr;
  }

  .confirm__money {
    justify-content: stretch;
  }

  .confirm__line {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .confirm__how {
    font-size: var(--fs-xs);
    grid-column: 1;
  }

  .confirm__kg {
    grid-area: 1 / 2 / span 2;
    align-self: center;
  }

  .confirm__actions .btn {
    flex: auto;
  }

  .switch__label {
    white-space: normal;
  }
}

.b2btabs {
  background: var(--white);
  border-bottom: 1px solid var(--line);
}

.b2btabs__inner {
  flex-wrap: wrap;
  align-items: center;
  gap: 0 1.5rem;
  display: flex;
}

.b2btab {
  font: inherit;
  font-size: var(--fs-sm);
  color: var(--ink-70);
  cursor: pointer;
  background: none;
  border: 0;
  border-bottom: 3px solid #0000;
  align-items: center;
  gap: .5rem;
  padding: .875rem 0 .75rem;
  font-weight: 700;
  transition: color .14s, border-color .14s;
  display: inline-flex;
}

.b2btab:hover {
  color: var(--ink);
}

.b2btab[aria-selected="true"] {
  color: var(--ink);
  border-bottom-color: var(--green);
}

.b2btab__count {
  background: var(--mist);
  min-width: 1.5rem;
  font-size: var(--fs-xs);
  text-align: center;
  font-variant-numeric: tabular-nums;
  border-radius: 100px;
  padding: .0625rem .4375rem;
  font-weight: 800;
}

.b2btab[aria-selected="true"] .b2btab__count {
  background: var(--green);
  color: #fff;
}

.history {
  padding-block: 1.5rem 3rem;
}

.history__head {
  margin-bottom: 1.25rem;
}

.history__head h1 {
  margin-bottom: .375rem;
  font-size: 1.625rem;
  font-stretch: 110%;
}

.history .notice {
  max-width: none;
  margin-bottom: 1.25rem;
}

.history__empty {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  text-align: center;
  padding: 2.5rem 1.5rem;
}

.history__empty p {
  color: var(--ink-70);
  margin: 0 auto 1rem;
}

.orders {
  gap: .75rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.order {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  transition: border-color .14s;
  overflow: hidden;
}

.order:hover {
  border-color: var(--ink-45);
}

.order details[open] {
  background: var(--white);
}

.order__sum {
  cursor: pointer;
  grid-template-columns: minmax(9rem, auto) minmax(0, 1fr) auto auto auto;
  align-items: center;
  gap: .5rem 1.5rem;
  padding: 1rem 1.25rem;
  list-style: none;
  display: grid;
}

.order__sum::-webkit-details-marker {
  display: none;
}

.order__sum:after {
  content: "";
  border-right: 2px solid var(--ink-45);
  border-bottom: 2px solid var(--ink-45);
  width: 8px;
  height: 8px;
  margin-left: .25rem;
  transition: transform .18s;
  transform: rotate(45deg) translateY(-2px);
}

.order details[open] .order__sum:after {
  transform: rotate(-135deg);
}

.order__id strong {
  font-weight: 800;
  font-stretch: 106%;
  display: block;
}

.order__date {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  display: block;
}

.order__meta {
  font-size: var(--fs-sm);
  color: var(--ink-70);
}

.order__kg {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font-weight: 800;
}

.order__status {
  font-size: var(--fs-xs);
  white-space: nowrap;
  border-radius: 100px;
  padding: .25rem .625rem;
  font-weight: 700;
}

.order__status.is-sent {
  background: var(--mist);
  color: var(--ink-70);
}

.order__status.is-confirmed {
  color: #6b5300;
  background: #fff6d6;
}

.order__status.is-delivered {
  color: var(--green);
  background: #e3f2e5;
}

.order__status.is-shipped {
  color: #1f4e7a;
  background: #e4eef8;
}

.order__status.is-cancelled {
  color: #8a2323;
  background: #f6e3e3;
}

.order__new {
  background: var(--lime-bright);
  color: var(--green-deep);
  text-transform: uppercase;
  letter-spacing: .04em;
  vertical-align: 1px;
  border-radius: 100px;
  margin-left: .375rem;
  padding: 0 .375rem;
  font-size: .625rem;
  font-weight: 800;
  display: inline-block;
}

.b2btab__count.is-new {
  background: var(--lime-bright);
  color: var(--green-deep);
}

.order__adv {
  color: #5b4700;
  font-size: var(--fs-sm);
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  background: #fff6d6;
  border-left: 3px solid #d9a400;
  margin: .75rem 1rem 0;
  padding: .625rem .875rem;
  font-weight: 600;
}

.order__adv.is-paid {
  border-left-color: var(--green);
  color: var(--green-deep);
  background: #eff7ea;
}

.order__money {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  font-variant-numeric: tabular-nums;
  margin: .625rem 1rem 0;
  font-weight: 700;
}

.order__doc.is-issued:before {
  content: "✓";
  color: var(--green);
  margin-right: .35em;
}

.order__lines {
  border-top: 1px solid var(--line-2);
  margin: 0;
  padding: 0 1.25rem;
  list-style: none;
}

.order__actions {
  justify-content: flex-end;
  padding: .75rem 1.25rem 1.125rem;
  display: flex;
}

.order details[open] .order__lines {
  animation: .2s ease-out backwards fc-fade;
}

.sent__actions {
  flex-wrap: wrap;
  justify-content: center;
  gap: .5rem;
  margin-top: 1.5rem;
  display: flex;
}

@media (max-width: 640px) {
  .order__sum {
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: .375rem .75rem;
  }

  .order__meta {
    grid-area: 2 / 1 / auto / -1;
  }

  .order__status {
    grid-area: 1 / 2;
  }

  .order__kg {
    grid-area: 3 / 1;
  }

  .order__sum:after {
    grid-area: 1 / 3;
  }

  .order__actions .btn {
    flex: auto;
  }
}

.order-head {
  background: var(--white);
  border-bottom: 1px solid var(--line);
  padding-block: 1.5rem;
}

.order-head__top {
  flex-wrap: wrap;
  align-items: baseline;
  gap: .75rem 1.25rem;
  margin-bottom: 1.375rem;
  display: flex;
}

.order-head h1 {
  font-size: 1.625rem;
  font-stretch: 110%;
}

.order-head__who {
  color: var(--ink-70);
  font-size: var(--fs-sm);
  margin-left: auto;
}

.order-head__fields {
  grid-template-columns: repeat(auto-fit, minmax(min(10rem, 100%), 1fr));
  gap: 1rem;
  display: grid;
}

.order-head__fields .field {
  margin: 0;
}

.order-head__fields .field, .order-head__fields .cselect {
  min-width: 0;
}

.order-head__fields select, .order-head__fields .cselect__btn {
  max-width: 100%;
}

.order-head__fields .cselect__value {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.toolbar {
  top: var(--top-masthead, 69px);
  z-index: 30;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--line);
  background: #f3f7f0f0;
  padding-block: .875rem;
  position: sticky;
}

.toolbar__inner {
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem;
  display: flex;
}

.search {
  flex: 15rem;
  min-width: 12rem;
}

.search input {
  width: 100%;
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  background: var(--white);
  border-radius: 100px;
  padding: .625rem .8125rem;
}

.search input:focus {
  border-color: var(--green-bright);
  outline: 3px solid #00903029;
}

.toolbar__filters {
  gap: .375rem;
  width: 100%;
  min-width: 0;
  display: grid;
}

.toolbar__selects {
  gap: .5rem;
  width: 100%;
  min-width: 0;
  display: none;
}

.toolbar__selects select {
  min-width: 0;
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  background: var(--white);
  color: var(--ink);
  border-radius: 100px;
  flex: 1 1 0;
  padding: .625rem .75rem;
}

.toolbar__selects select:focus {
  border-color: var(--green-bright);
  outline: 3px solid #00903029;
}

.chips {
  flex-wrap: wrap;
  gap: .375rem;
  display: flex;
}

.chip {
  font: inherit;
  font-size: var(--fs-xs);
  cursor: pointer;
  background: var(--white);
  color: var(--ink);
  border: 1.5px solid var(--line);
  border-radius: 100px;
  padding: .4375rem .75rem;
  font-weight: 600;
  transition: background-color .12s, border-color .12s;
}

.chip:hover {
  border-color: var(--ink-45);
}

.chip[aria-pressed="true"] {
  background: var(--green);
  border-color: var(--green);
  color: #fff;
}

.chip--all {
  font-weight: 700;
}

.chips--alt .chip[aria-pressed="true"] {
  background: var(--green-deep);
  border-color: var(--green-deep);
  color: #fff;
}

.table-card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  margin-top: 1.5rem;
}

.grid-table thead th:first-child {
  border-top-left-radius: calc(var(--r) - 1px);
}

.grid-table thead th:last-child {
  border-top-right-radius: calc(var(--r) - 1px);
}

.grid-table tbody tr:last-child td:first-child {
  border-bottom-left-radius: calc(var(--r) - 1px);
}

.grid-table tbody tr:last-child td:last-child {
  border-bottom-right-radius: calc(var(--r) - 1px);
}

.grid-table {
  border-collapse: collapse;
  width: 100%;
  font-size: var(--fs-sm);
}

.grid-table thead th {
  top: var(--top-toolbar, 130px);
  z-index: 20;
  background: var(--ink);
  color: #fff;
  text-align: left;
  font-size: var(--fs-xs);
  white-space: nowrap;
  padding: .6875rem .875rem;
  font-weight: 700;
  position: sticky;
}

.grid-table th.num, .grid-table td.num {
  text-align: right;
}

.grid-table tbody td {
  border-top: 1px solid var(--line-2);
  padding: .375rem .875rem;
}

.grid-table tbody tr:hover td {
  background: #fafcf8;
}

.grid-table tr.has-qty td {
  background: #eff7ea;
}

.grid-table tr.has-qty:hover td {
  background: #e7f2df;
}

.t-code {
  white-space: nowrap;
  font-weight: 700;
}

.t-name {
  color: var(--ink-70);
}

.t-kg {
  white-space: nowrap;
  color: var(--ink-70);
}

.t-qty input {
  width: 5rem;
  font: inherit;
  font-size: var(--fs-sm);
  font-variant-numeric: tabular-nums;
  text-align: right;
  border: 1.5px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--white);
  padding: .375rem .5rem;
}

.t-qty input:focus {
  border-color: var(--green-bright);
  outline: 3px solid #00903029;
}

.t-qty input:not(:placeholder-shown) {
  border-color: var(--green-bright);
  font-weight: 700;
}

.t-total {
  white-space: nowrap;
  font-weight: 700;
}

.group-row th {
  background: var(--mist);
  color: var(--ink);
  font-size: var(--fs-xs);
  border-top: 1px solid var(--line);
  padding: .5625rem .875rem;
  font-weight: 800;
  position: static;
}

.empty-state {
  text-align: center;
  color: var(--ink-70);
  padding: 3.5rem 1rem;
}

.empty-state[hidden] {
  display: none;
}

.misc {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  margin-top: 1.5rem;
  padding: 1.5rem;
}

.misc h2 {
  font-size: var(--fs-h3);
  margin-bottom: .25rem;
  font-stretch: 106%;
}

.misc > p {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  margin-bottom: 1rem;
}

.misc__row {
  flex-wrap: wrap;
  gap: .5rem;
  margin-bottom: .5rem;
  display: flex;
}

.misc__row input {
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  border-radius: var(--r-sm);
  padding: .5rem .6875rem;
}

.misc__row input[type="text"] {
  flex: 14rem;
}

.misc__row input[type="number"] {
  text-align: right;
  width: 6.5rem;
}

.b2b-body main {
  flex-direction: column;
  display: flex;
}

#order-view {
  flex-direction: column;
  flex: 1 0 auto;
  display: flex;
}

#order-view > .wrap {
  flex: 1 0 auto;
}

.totalbar {
  z-index: 40;
  background: var(--ink);
  color: #fff;
  margin-top: auto;
  padding: .9375rem 0;
  position: sticky;
  bottom: 0;
}

.totalbar__inner {
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 2.5rem;
  display: flex;
}

.totalbar__stat {
  align-items: baseline;
  gap: .5rem;
  display: flex;
}

.totalbar__label {
  font-size: var(--fs-xs);
  color: #ffffff9e;
}

.totalbar__value {
  letter-spacing: -.02em;
  font-size: 1.625rem;
  font-weight: 800;
  font-stretch: 110%;
  line-height: 1;
}

.totalbar__value.is-kg {
  color: var(--lime-bright);
}

.totalbar__actions {
  flex-wrap: wrap;
  gap: .5rem;
  margin-left: auto;
  display: flex;
}

.totalbar .btn--ghost {
  color: #fff;
  box-shadow: inset 0 0 0 1.5px #fff6;
}

.totalbar .btn--ghost:hover {
  color: var(--ink);
  background: #fff;
}

.sent {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  text-align: center;
  padding: clamp(2rem, 6vw, 3.5rem);
}

.sent h2 {
  font-size: var(--fs-h2);
  margin-bottom: .75rem;
  font-stretch: 110%;
}

.sent p {
  margin-inline: auto;
}

.sent__check {
  background: var(--green);
  color: #fff;
  border-radius: 50%;
  place-items: center;
  width: 64px;
  height: 64px;
  margin: 0 auto 1.5rem;
  font-size: 2rem;
  font-weight: 800;
  display: grid;
}

@keyframes fc-rise {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes fc-fade {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fc-pop {
  0% {
    transform: scale(1);
  }

  40% {
    transform: scale(1.06);
  }

  100% {
    transform: scale(1);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .has-motion .hero h1 {
    animation: .5s ease-out 40ms backwards fc-rise;
  }

  .has-motion .hero__lede {
    animation: .5s ease-out .12s backwards fc-rise;
  }

  .has-motion .hero__actions {
    animation: .5s ease-out .2s backwards fc-rise;
  }

  .has-motion .hero .board {
    animation: .55s ease-out .28s backwards fc-rise;
  }
}

.cselect__list {
  animation: .16s ease-out backwards fc-rise;
}

.nav--open {
  animation: .18s ease-out backwards fc-rise;
}

.consent {
  animation: .28s ease-out backwards fc-rise;
}

.sent {
  animation: .35s ease-out backwards fc-rise;
}

.sent__check {
  animation: .45s ease-out .2s backwards fc-pop;
}

.cform__done {
  animation: .25s ease-out backwards fc-fade;
}

.alert:not([hidden]) {
  animation: .2s ease-out backwards fc-fade;
}

.totalbar__value {
  transition: color .2s;
}

.totalbar__value.is-bumped {
  animation: .35s ease-out fc-pop;
}

.grid-table tbody tr td {
  transition: background-color .18s;
}

.t-qty input, .search input, .field input, .field select, .cform textarea {
  transition: border-color .14s, box-shadow .14s;
}

html.rv-on .rv {
  opacity: 0;
  transform: translateY(12px);
}

html.rv-on .rv.is-in {
  opacity: 1;
  transition: opacity .45s ease var(--rv-d, 0s), transform .5s cubic-bezier(.2, .7, .2, 1) var(--rv-d, 0s);
  transform: none;
}

[data-count], .totalbar__value, .offer__v, .board__price {
  font-variant-numeric: tabular-nums;
}

.cat__img {
  transition: transform .35s;
}

.cat:hover .cat__img {
  transform: scale(1.03);
}

.cat__photo picture {
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}

.pr-page {
  padding-top: .5rem;
}

.pr-h1 {
  font-size: var(--fs-h2);
  margin-bottom: .75rem;
  font-stretch: 112%;
}

.pr-tabs {
  background: var(--white);
  border-block: 1px solid var(--line);
}

.pr-tabs .b2btabs__inner {
  scrollbar-width: none;
  flex-wrap: nowrap;
  gap: 0 1.75rem;
  overflow-x: auto;
}

.pr-tabs .b2btabs__inner::-webkit-scrollbar {
  display: none;
}

.pr-tabs .b2btab {
  white-space: nowrap;
  flex: none;
  text-decoration: none;
}

.pr-app {
  padding-top: 1.25rem;
}

.pr-toolbar {
  flex-direction: column;
  gap: .75rem;
  margin-bottom: 1rem;
  display: flex;
}

.pr-toolbar__inner {
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem 1.25rem;
  display: flex;
}

.pr-toolbar .search {
  flex: 18rem;
  max-width: 30rem;
}

.pr-toolbar__sel {
  flex: 0 20rem;
  min-width: 12rem;
}

.pr-toolbar__sel select {
  width: 100%;
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  background: var(--white);
  color: var(--ink);
  border-radius: 100px;
  padding: .625rem .8125rem;
}

.pr-stamp {
  font-size: var(--fs-xs);
  color: var(--green);
  margin: 0 0 .375rem;
  font-weight: 700;
}

.pr-legend {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  flex-wrap: wrap;
  gap: .25rem 1.25rem;
  margin-bottom: 1.25rem;
  display: flex;
}

.pr-legend__item {
  align-items: center;
  gap: .4375rem;
  display: inline-flex;
}

.pr-swatch {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}

.pr-swatch--off {
  color: #a9b2a3;
  -webkit-text-decoration: line-through #646f5d73;
  text-decoration: line-through #646f5d73;
}

.pr-note {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  max-width: 70ch;
  margin: .875rem 0 0;
}

.pr-app > .notice {
  max-width: 72ch;
  margin-bottom: 1rem;
}

.pr-sec {
  scroll-margin-top: calc(var(--top-masthead, 93px) + 1rem);
  margin-bottom: 2rem;
}

.pr-sec__title {
  font-size: var(--fs-h3);
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .75rem;
  margin-bottom: .625rem;
  font-stretch: 106%;
  display: flex;
}

.pr-sec__unit {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  font-weight: 600;
}

.pr-card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  overflow: hidden;
}

.pr-scroll {
  overscroll-behavior-x: contain;
  overflow-x: auto;
}

.pr-scroll:focus-visible {
  outline: 3px solid var(--green-bright);
  outline-offset: -3px;
}

.pr-table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  font-size: var(--fs-sm);
  font-variant-numeric: tabular-nums;
}

.pr-table thead th {
  background: var(--ink);
  color: #fff;
  text-align: left;
  font-size: var(--fs-xs);
  white-space: nowrap;
  padding: .625rem .75rem;
  font-weight: 700;
}

.pr-table .pr-groups th {
  background: var(--green-deep);
  letter-spacing: .01em;
  padding-block: .375rem;
  font-weight: 800;
}

.pr-table .pr-groups .pr-group {
  text-align: center;
  border-left: 1px solid #ffffff24;
}

.pr-table .pr-groups .pr-group--br {
  background: var(--green-mid);
}

.pr-table th.num, .pr-table td.num {
  text-align: right;
}

.pr-table tbody th, .pr-table tbody td {
  border-top: 1px solid var(--line-2);
  vertical-align: top;
  padding: .4375rem .75rem;
}

.pr-table tbody th {
  text-align: left;
  font-weight: 600;
}

.pr-table tbody tr:hover > * {
  background: #fafcf8;
}

.pr-table .pr-name {
  z-index: 1;
  background: var(--white);
  min-width: 13rem;
  max-width: 22rem;
  box-shadow: 1px 0 0 var(--line);
  position: sticky;
  left: 0;
}

.pr-table thead .pr-name {
  background: var(--ink);
  z-index: 2;
}

.pr-table .pr-groups .pr-name {
  background: var(--green-deep);
}

.pr-meta {
  color: var(--ink-70);
  white-space: nowrap;
  font-size: var(--fs-xs);
}

.pr-split {
  border-left: 2px solid var(--line);
}

.pr-table thead .pr-split {
  border-left-color: #ffffff38;
}

.pr-cell {
  white-space: nowrap;
}

.pr-v {
  font-weight: 700;
  display: block;
}

.pr-v--lg {
  color: var(--green);
  font-size: 1.0625rem;
  font-weight: 800;
}

.pr-bag, .pr-tag {
  color: var(--ink-45);
  font-size: .6875rem;
  font-weight: 500;
  line-height: 1.25;
  display: block;
}

.pr-tag {
  color: var(--green);
  text-transform: lowercase;
  font-weight: 700;
}

.pr-ask {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  font-style: italic;
  font-weight: 600;
}

.pr-table .is-off .pr-v {
  color: #a9b2a3;
  font-weight: 600;
  -webkit-text-decoration: line-through #646f5d73;
  text-decoration: line-through #646f5d73;
}

.pr-table .is-off .pr-bag, .pr-table .is-off .pr-tag {
  color: #b7bfb1;
}

.pr-table tr.is-off > th {
  color: var(--ink-45);
  font-weight: 500;
}

.pr-hide-off .pr-cell.is-off > * {
  visibility: hidden;
}

.pr-otkup {
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  align-items: start;
  gap: clamp(1.25rem, 3vw, 2.5rem);
  display: grid;
}

.pr-otkup__side {
  gap: 1.25rem;
  display: grid;
}

.pr-table--otkup tbody th {
  font-size: var(--fs-body);
  padding-block: .5625rem;
  font-weight: 600;
}

.pr-table--otkup tbody td {
  vertical-align: middle;
}

.pr-table--otkup tbody .pr-name, .pr-table--ladder tbody th {
  box-shadow: none;
  position: static;
}

.pr-table--otkup thead .pr-name, .pr-table--ladder thead th {
  box-shadow: none;
}

.pr-panel {
  background: var(--mist);
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: 1.25rem;
}

.pr-panel h3 {
  font-size: var(--fs-h3);
  margin-bottom: .75rem;
  font-stretch: 106%;
}

.pr-panel__sub {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  margin: -.25rem 0 .875rem;
}

.pr-panel .pr-card {
  margin-bottom: .625rem;
}

.pr-terms {
  font-size: var(--fs-sm);
  grid-template-columns: auto 1fr;
  gap: .5rem 1rem;
  margin: 0;
  display: grid;
}

.pr-terms dt {
  color: var(--ink);
  font-weight: 700;
}

.pr-terms dd {
  color: var(--ink-70);
  margin: 0;
}

.pr-table--ladder tbody th {
  white-space: nowrap;
  font-weight: 600;
}

.pr-pest__name {
  display: block;
}

.pr-type {
  background: var(--mist);
  color: var(--ink-70);
  border-radius: 100px;
  margin-top: .1875rem;
  padding: .0625rem .4375rem;
  font-size: .6875rem;
  font-weight: 700;
  display: inline-block;
}

.pr-type--her {
  color: #4e5e00;
  background: #eef6d6;
}

.pr-type--fun {
  color: #1f4e6e;
  background: #e4f1fa;
}

.pr-type--ins {
  color: #8a2a1c;
  background: #fbe9e7;
}

.pr-ai {
  min-width: 14rem;
  color: var(--ink-70);
  font-size: var(--fs-xs);
}

.pr-toolbar__chips .chips {
  gap: .375rem;
}

.board__more {
  font-size: var(--fs-xs);
  color: var(--lime-bright);
  margin-top: .75rem;
  font-weight: 700;
  display: inline-block;
}

.board__more:hover {
  color: #fff;
}

.wh {
  padding-block: 1.5rem 3rem;
}

.wh .notice {
  max-width: 72ch;
  margin-bottom: 1rem;
}

@media (min-width: 1280px) {
  .pr-card, .pr-scroll {
    overflow: visible;
  }

  .pr-table thead th {
    top: var(--top-masthead, 93px);
    z-index: 3;
    position: sticky;
  }

  .pr-table .pr-groups ~ tr th, .pr-table thead tr + tr th {
    top: calc(var(--top-masthead, 93px) + var(--pr-groups-h, 0px));
  }

  .pr-table thead tr:first-child th:first-child {
    border-top-left-radius: calc(var(--r) - 1px);
  }

  .pr-table thead tr:first-child th:last-child {
    border-top-right-radius: calc(var(--r) - 1px);
  }
}

@media (max-width: 900px) {
  .pr-otkup {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .pr-table {
    font-size: var(--fs-xs);
  }

  .pr-table thead th, .pr-table tbody th, .pr-table tbody td {
    padding-inline: .5rem;
  }

  .pr-table .pr-name {
    white-space: normal;
    min-width: 9.5rem;
    max-width: 11rem;
  }

  .pr-table--otkup .pr-name {
    min-width: 0;
    max-width: none;
  }

  .pr-table--otkup tbody th {
    font-size: var(--fs-sm);
  }

  .pr-toolbar__sel {
    flex: 100%;
  }

  .pr-toolbar__chips {
    scrollbar-width: none;
    margin-inline: calc(var(--gut) * -1);
    padding-inline: var(--gut);
    overflow-x: auto;
  }

  .pr-toolbar__chips .chips {
    flex-wrap: nowrap;
  }

  .pr-toolbar__chips .chip {
    white-space: nowrap;
  }

  .pr-terms {
    grid-template-columns: 1fr;
    gap: .125rem;
  }

  .pr-terms dd {
    margin-bottom: .5rem;
  }
}

.qsearch {
  flex: 14rem;
  min-width: 10rem;
  max-width: 26rem;
  position: relative;
}

.qsearch__icon {
  color: var(--ink-45);
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: .875rem;
  transform: translateY(-50%);
}

.qsearch input {
  width: 100%;
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  background: var(--mist);
  color: var(--ink);
  border-radius: 100px;
  padding: .625rem 1rem .625rem 2.5rem;
  transition: border-color .14s, background-color .14s;
}

.qsearch input::placeholder {
  color: var(--ink-45);
}

.qsearch input:hover {
  border-color: #cbd5c4;
}

.qsearch input:focus {
  border-color: var(--green-bright);
  background: var(--white);
  outline: 3px solid #00903029;
}

.qsearch input::-webkit-search-cancel-button {
  cursor: pointer;
}

.qsearch__list {
  z-index: 60;
  width: max(100%, min(30rem, calc(100vw - 2 * var(--gut))));
  background: var(--white);
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: var(--r);
  overscroll-behavior: contain;
  max-height: min(28rem, 62vh);
  margin: 0;
  padding: .375rem;
  list-style: none;
  position: absolute;
  top: calc(100% + .5rem);
  left: 0;
  overflow-y: auto;
  box-shadow: 0 18px 48px -16px #04301a73;
}

.qr__head {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--ink-45);
  padding: .625rem .75rem .25rem;
  font-size: .6875rem;
  font-weight: 800;
}

.qr__none {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  padding: 1rem .75rem;
}

.qr__link {
  border-radius: var(--r-sm);
  color: inherit;
  grid-template-columns: 2.75rem minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  padding: .4375rem .625rem;
  text-decoration: none;
  display: grid;
}

.qr__link:hover, .qr[aria-selected="true"] .qr__link {
  background: var(--mist);
}

.qr[aria-selected="true"] .qr__link {
  box-shadow: inset 3px 0 0 var(--green);
}

.qr__thumb {
  border-radius: var(--r-sm);
  background: var(--mist);
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  display: grid;
  overflow: hidden;
}

.qr__thumb img {
  object-fit: contain;
  background: var(--white);
  width: 100%;
  height: 100%;
}

.qr__thumb--list {
  background: var(--line-2);
  color: var(--ink-45);
  letter-spacing: .04em;
  font-size: .625rem;
  font-weight: 800;
}

.qr__text {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.qr__name {
  font-weight: 700;
  font-size: var(--fs-sm);
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.25;
  overflow: hidden;
}

.qr__sub {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.qr__price {
  font-size: var(--fs-xs);
  color: var(--green);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  font-weight: 800;
}

.qr__price--ask {
  color: var(--ink-45);
  font-style: italic;
  font-weight: 600;
}

.masthead__logo {
  flex: none;
}

@media (min-width: 1280px) {
  .masthead__inner {
    max-width: min(94%, 1800px);
  }
}

@media (max-width: 1279px) {
  .nav {
    display: none;
  }

  .nav--open {
    background: var(--white);
    border-bottom: 1px solid var(--line);
    padding: 1rem var(--gut);
    flex-direction: column;
    align-items: stretch;
    gap: .25rem;
    display: flex;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
  }

  .nav--open a:not(.btn) {
    padding: .5rem 0;
  }

  .nav__toggle {
    flex: none;
    display: grid;
  }
}

@media (max-width: 760px) {
  .masthead__inner {
    flex-wrap: wrap;
    row-gap: .5rem;
  }

  .qsearch {
    flex: 100%;
    order: 3;
    max-width: none;
  }

  .qsearch input {
    font-size: 1rem;
  }

  .qsearch__list {
    width: 100%;
  }
}

@media (max-width: 560px) {
  .qr__link {
    grid-template-columns: 2.25rem minmax(0, 1fr);
  }

  .qr__thumb {
    width: 2.25rem;
    height: 2.25rem;
  }

  .qr__price {
    grid-column: 2;
    margin-top: -.125rem;
  }
}

.prod__price {
  font-size: var(--fs-xs);
  color: var(--green);
  font-variant-numeric: tabular-nums;
  padding: 0 1rem .5rem;
  font-weight: 800;
}

.offer {
  background: var(--mist);
  border: 1px solid var(--line);
  border-radius: var(--r);
  margin-top: 1.75rem;
  padding: 1.25rem;
}

.offer__head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: .25rem 1rem;
  margin-bottom: 1rem;
  display: flex;
}

.offer__title, .section .offer__title {
  font-size: var(--fs-h3);
  margin: 0;
  font-stretch: 106%;
}

.offer__date {
  font-size: var(--fs-xs);
  color: var(--green);
  font-weight: 700;
}

.offer__none {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin: 0;
}

.offer__group {
  margin-bottom: 1rem;
}

.offer__label {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  margin-bottom: .4375rem;
  font-weight: 800;
  display: block;
}

.offer__opts {
  flex-wrap: wrap;
  gap: .4375rem;
  display: flex;
}

.opt {
  font: inherit;
  font-size: var(--fs-sm);
  cursor: pointer;
  background: var(--white);
  color: var(--ink);
  border: 1.5px solid var(--line);
  border-radius: var(--r-sm);
  text-align: left;
  flex-direction: column;
  align-items: flex-start;
  gap: .0625rem;
  padding: .5rem .8125rem;
  font-weight: 700;
  line-height: 1.2;
  transition: border-color .12s, background-color .12s;
  display: inline-flex;
}

.opt:hover:not(:disabled) {
  border-color: var(--ink-45);
}

.opt:focus-visible {
  outline: 3px solid var(--green-bright);
  outline-offset: 2px;
}

.opt[aria-checked="true"] {
  background: var(--green);
  border-color: var(--green);
  color: #fff;
}

.opt__sub {
  color: var(--ink-45);
  font-variant-numeric: tabular-nums;
  font-size: .6875rem;
  font-weight: 600;
}

.opt[aria-checked="true"] .opt__sub {
  color: #fffc;
}

.opt--off {
  cursor: not-allowed;
  color: #a9b2a3;
  background: none;
  border-style: dashed;
}

.opt--off, .opt--off .opt__sub {
  -webkit-text-decoration: line-through #646f5d73;
  text-decoration: line-through #646f5d73;
}

.offer__price {
  border-top: 1px solid var(--line);
  margin-top: 1.25rem;
  padding-top: 1rem;
}

.offer__big {
  margin: 0;
  line-height: 1.1;
}

.offer__v {
  color: var(--green);
  font-variant-numeric: tabular-nums;
  font-size: clamp(1.75rem, 3.4vw, 2.25rem);
  font-weight: 800;
  font-stretch: 108%;
}

.offer__unit {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  font-weight: 700;
}

.offer__total {
  font-weight: 700;
  font-size: var(--fs-sm);
  margin: .375rem 0 0;
}

.offer__meta {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  margin: .375rem 0 0;
}

.toolbar__selects .cselect {
  flex: 1 1 0;
  min-width: 0;
}

.toolbar__selects .cselect__btn {
  width: 100%;
  min-width: 0;
}

.alert--warn {
  border-left-color: var(--lime);
  color: #4e5e00;
  background: #f6f9e6;
}

.order-head__fields--two {
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  max-width: 64rem;
}

.profile {
  padding-block: 1.5rem 3rem;
}

.profile__form, .profile .history__head, #profile-error {
  max-width: 56rem;
}

.profile__form {
  gap: 1.25rem;
  display: grid;
}

.profile__card {
  border: 1px solid var(--line);
  border-radius: var(--r);
  background: var(--white);
  min-width: 0;
  margin: 0;
  padding: 1.25rem 1.25rem .25rem;
}

.profile__card legend {
  font-weight: 800;
  font-stretch: 106%;
  font-size: var(--fs-h3);
  margin-left: -.375rem;
  padding: 0 .375rem;
}

.profile__card > .field {
  max-width: 20rem;
}

.profile__hint {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  max-width: 60ch;
  margin: -.25rem 0 1rem;
}

.locs {
  gap: .875rem;
  margin-bottom: 1rem;
  display: grid;
}

.loc {
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--mist);
  padding: 1rem 1rem .25rem;
}

.loc__head {
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: .625rem;
  display: flex;
}

.loc__head strong {
  font-size: var(--fs-sm);
}

.loc .field input {
  background: var(--white);
}

.field__link {
  font: inherit;
  font-size: var(--fs-xs);
  color: var(--green);
  text-underline-offset: 2px;
  cursor: pointer;
  background: none;
  border: 0;
  margin-top: .375rem;
  padding: 0;
  font-weight: 700;
  text-decoration: underline;
  display: inline-block;
}

.field__link:hover {
  color: var(--green-deep);
}

.profile__actions {
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem 1.25rem;
  display: flex;
}

.profile__saved {
  font-size: var(--fs-sm);
  color: var(--green);
  font-weight: 700;
}

.profile__saved:before {
  content: "✓ ";
}

input.is-readonly {
  background: var(--mist);
  color: var(--ink-70);
  cursor: default;
}

@media (max-width: 560px) {
  .order-head__fields--two {
    grid-template-columns: minmax(0, 1fr);
  }
}

.gal-filter {
  margin-bottom: 1.25rem;
}

.gal {
  grid-template-columns: repeat(auto-fill, minmax(min(15rem, 100%), 1fr));
  grid-auto-rows: 11rem;
  grid-auto-flow: dense;
  gap: .75rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.gal__item--wide {
  grid-column: span 2;
}

.gal__item--tall {
  grid-row: span 2;
}

.gal__btn {
  border-radius: var(--r);
  background: var(--mist);
  cursor: zoom-in;
  border: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  display: block;
  position: relative;
  overflow: hidden;
}

.gal__btn picture, .gal__btn img {
  width: 100%;
  height: 100%;
  display: block;
}

.gal__btn img {
  object-fit: cover;
  transition: transform .35s;
}

.gal__btn:hover img {
  transform: scale(1.03);
}

.gal__btn:focus-visible {
  outline: 3px solid var(--green-bright);
  outline-offset: 3px;
}

.gal__cap {
  font-size: var(--fs-xs);
  color: #fff;
  text-align: left;
  background: linear-gradient(to top, #04301ad1, #04301a00);
  padding: 1.75rem .875rem .625rem;
  font-weight: 700;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.gal-note {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  max-width: 70ch;
  margin-top: 1.5rem;
}

.lightbox {
  color: #fff;
  background: none;
  border: 0;
  width: 100vw;
  max-width: none;
  height: 100dvh;
  max-height: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.lightbox::backdrop {
  background: #06140aeb;
}

.lightbox[open] {
  place-items: center;
  display: grid;
}

.lightbox__fig {
  flex-direction: column;
  align-items: center;
  gap: .75rem;
  max-width: calc(100vw - 7rem);
  margin: 0;
  display: flex;
}

.lightbox__fig img {
  object-fit: contain;
  border-radius: var(--r-sm);
  background: #fff;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: calc(100dvh - 8rem);
}

.lightbox__cap {
  text-align: center;
  font-size: var(--fs-sm);
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
  gap: .25rem 1rem;
  font-weight: 600;
  display: flex;
}

.lightbox__credit {
  font-size: var(--fs-xs);
  color: #ffffffb3;
  font-weight: 500;
}

.lightbox__credit a {
  color: var(--lime-bright);
}

.lightbox__count {
  font-size: var(--fs-xs);
  color: #ffffff8c;
  font-variant-numeric: tabular-nums;
}

.lightbox__btn, .lightbox__close {
  color: #fff;
  width: 3rem;
  height: 3rem;
  font: inherit;
  cursor: pointer;
  background: #ffffff1f;
  border: 0;
  border-radius: 50%;
  place-items: center;
  font-size: 2rem;
  line-height: 1;
  display: grid;
  position: absolute;
}

.lightbox__btn:hover, .lightbox__close:hover {
  background: #ffffff3d;
}

.lightbox__btn:focus-visible, .lightbox__close:focus-visible {
  outline: 3px solid var(--lime-bright);
  outline-offset: 2px;
}

.lightbox__btn--prev {
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
}

.lightbox__btn--next {
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
}

.lightbox__close {
  font-size: 1.75rem;
  top: 1rem;
  right: 1rem;
}

@media (max-width: 560px) {
  .gal {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 8.5rem;
    gap: .5rem;
  }

  .gal__cap {
    padding: 1.25rem .5rem .4375rem;
    font-size: .6875rem;
  }

  .lightbox__fig {
    max-width: calc(100vw - 1.5rem);
  }

  .lightbox__fig img {
    max-height: calc(100dvh - 10rem);
  }

  .lightbox__btn {
    top: auto;
    bottom: 1.25rem;
    transform: none;
  }

  .lightbox__btn--prev {
    left: calc(50% - 4rem);
  }

  .lightbox__btn--next {
    right: calc(50% - 4rem);
  }
}

.news-lead {
  grid-template-columns: repeat(auto-fit, minmax(min(22rem, 100%), 1fr));
  gap: 1.25rem;
  margin-bottom: 2.75rem;
  display: grid;
}

.news-archive__h {
  font-size: var(--fs-h3);
  margin-bottom: .25rem;
  font-stretch: 106%;
}

.section .news-archive__h {
  font-size: var(--fs-h3);
}

.news-archive__sub {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  max-width: 70ch;
  margin: 0 0 1.25rem;
}

.news-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(15rem, 100%), 1fr));
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.ncard {
  display: flex;
}

.ncard__link {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  width: 100%;
  color: inherit;
  flex-direction: column;
  text-decoration: none;
  transition: border-color .15s, box-shadow .15s;
  display: flex;
  overflow: hidden;
}

.ncard__link:hover {
  border-color: var(--green-bright);
  box-shadow: var(--shadow);
  color: inherit;
}

.ncard__link:focus-visible {
  outline: 3px solid var(--green-bright);
  outline-offset: 2px;
}

.ncard__media {
  aspect-ratio: 16 / 9;
  background: var(--mist);
  display: block;
  overflow: hidden;
}

.ncard__media img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .35s;
}

.ncard__link:hover .ncard__media img {
  transform: scale(1.03);
}

.ncard__media--none {
  background: var(--green-deep);
  aspect-ratio: 4;
  background-image: radial-gradient(circle at 80% 10%, #bede1a47, #0000 60%);
  place-items: center;
  display: grid;
}

.ncard__mark {
  color: var(--lime-bright);
  letter-spacing: -.01em;
  font-size: 1.5rem;
  font-weight: 800;
  font-stretch: 112%;
}

.ncard__body {
  flex-direction: column;
  flex: 1;
  gap: .375rem;
  padding: 1rem 1.125rem 1.125rem;
  display: flex;
}

.ncard__meta {
  font-size: var(--fs-xs);
  color: var(--green);
  font-weight: 700;
}

.ncard__title, .section .ncard__title {
  margin: 0;
  font-size: 1.0625rem;
  font-stretch: 106%;
  line-height: 1.25;
}

.ncard--lead .ncard__title, .section .ncard--lead .ncard__title {
  font-size: clamp(1.25rem, 2.2vw, 1.5rem);
}

.ncard__lead {
  font-size: var(--fs-sm);
  color: var(--ink-70);
}

.ncard__more {
  font-size: var(--fs-xs);
  color: var(--green);
  margin-top: auto;
  padding-top: .375rem;
  font-weight: 800;
}

.post {
  max-width: 46rem;
}

.post__meta {
  font-size: var(--fs-xs);
  color: var(--green);
  margin: 0 0 .5rem;
  font-weight: 700;
}

.post__title {
  text-wrap: balance;
  margin-bottom: 1rem;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-stretch: 110%;
}

.post__lead {
  color: var(--ink-70);
  margin-bottom: 1.5rem;
  font-size: clamp(1.0625rem, 1.6vw, 1.1875rem);
}

.post__fig {
  border-radius: var(--r);
  background: var(--mist);
  margin: 0 0 1.75rem;
  overflow: hidden;
}

.post__fig img {
  object-fit: cover;
  width: 100%;
  height: auto;
  max-height: 26rem;
  display: block;
}

.post__body p {
  margin: 0 0 1rem;
  line-height: 1.65;
}

.post .notice {
  margin: .5rem 0 1.5rem;
}

.post__inline {
  margin: 1.25rem 0;
}

.post__inline img {
  border-radius: var(--r-sm);
  max-width: 100%;
  height: auto;
  display: block;
}

.post__tablewrap {
  margin: 1.25rem 0;
  overflow-x: auto;
}

.post__table {
  border-collapse: collapse;
  font-size: var(--fs-sm);
  min-width: 100%;
}

.post__table th, .post__table td {
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
  padding: .4375rem .75rem;
}

.post__table tr:first-child th {
  background: var(--ink);
  color: #fff;
  font-size: var(--fs-xs);
}

.post__table th[scope="row"] {
  color: var(--ink-70);
  font-weight: 600;
}

.post__rel {
  background: var(--mist);
  border: 1px solid var(--line);
  border-radius: var(--r);
  margin-top: 2rem;
  padding: 1.25rem;
}

.post__rel h2, .section .post__rel h2 {
  font-size: var(--fs-h3);
  margin-bottom: .625rem;
  font-stretch: 106%;
}

.post__rel ul {
  gap: .375rem;
  margin: 0;
  padding-left: 1.125rem;
  display: grid;
}

.post__rel a {
  font-weight: 700;
}

.post__back {
  margin-top: 2rem;
}

.cart-btn {
  color: #fff;
  cursor: pointer;
  background: #ffffff1a;
  border: 0;
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 3rem;
  height: 3rem;
  padding: 0;
  transition: background-color .14s;
  display: grid;
  position: relative;
}

.cart-btn:hover, .cart-btn[aria-expanded="true"] {
  background: #fff3;
}

.cart-btn:focus-visible {
  outline: 3px solid var(--lime-bright);
  outline-offset: 2px;
}

.cart-btn__badge {
  color: #fff;
  font-variant-numeric: tabular-nums;
  background: #ffffff47;
  border-radius: 100px;
  place-items: center;
  min-width: 1.375rem;
  height: 1.375rem;
  padding: 0 .3125rem;
  font-size: .75rem;
  font-weight: 800;
  display: grid;
  position: absolute;
  top: -.125rem;
  right: -.25rem;
}

.cart-btn.has-items .cart-btn__badge {
  background: var(--lime-bright);
  color: var(--green-deep);
}

.cart-anchor {
  height: 0;
  position: relative;
}

.cart-panel {
  left: var(--gut);
  width: min(36rem, calc(100% - 2 * var(--gut)));
  max-height: min(34rem, calc(100dvh - var(--top-masthead, 0px) - 8rem));
  background: var(--white);
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: var(--r);
  z-index: 45;
  flex-direction: column;
  display: flex;
  position: absolute;
  bottom: calc(100% + 1.5625rem);
  overflow: hidden;
  box-shadow: 0 -18px 48px -18px #04301a73;
}

.cart-panel:not([hidden]) {
  animation: .18s ease-out backwards fc-cart-up;
}

@keyframes fc-cart-up {
  from {
    opacity: 0;
    transform: translateY(.75rem);
  }
}

.cart-panel__head {
  border-bottom: 1px solid var(--line);
  align-items: baseline;
  gap: .75rem;
  padding: 1rem 1.125rem .75rem;
  display: flex;
}

.cart-panel__head h2 {
  font-size: var(--fs-h3);
  margin: 0;
  font-stretch: 106%;
}

.cart-panel__count {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  font-weight: 700;
}

.cart-panel__close {
  background: var(--mist);
  width: 2.25rem;
  height: 2.25rem;
  color: var(--ink);
  font: inherit;
  cursor: pointer;
  border: 0;
  border-radius: 50%;
  align-self: center;
  margin-left: auto;
  font-size: 1.375rem;
  line-height: 1;
}

.cart-panel__close:hover {
  background: var(--line);
}

.cart-panel__close:focus-visible {
  outline: 3px solid var(--green-bright);
  outline-offset: 2px;
}

.cart-list {
  overscroll-behavior: contain;
  flex: auto;
  margin: 0;
  padding: .25rem 0;
  list-style: none;
  overflow-y: auto;
}

.cart-line {
  border-bottom: 1px solid var(--line-2);
  grid-template-columns: minmax(0, 1fr) auto 4.75rem 2rem;
  align-items: center;
  gap: .75rem;
  padding: .5625rem 1.125rem;
  display: grid;
}

.cart-line:last-child {
  border-bottom: 0;
}

.cart-line__what {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.cart-line__code {
  font-weight: 800;
  font-size: var(--fs-sm);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.cart-line__name {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.cart-line__qty {
  border: 1.5px solid var(--line);
  border-radius: 100px;
  align-items: center;
  display: inline-flex;
  overflow: hidden;
}

.cart-line__qty--ro {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  border: 0;
}

.cart-line__qty input {
  width: 3rem;
  font: inherit;
  font-size: var(--fs-sm);
  text-align: center;
  font-variant-numeric: tabular-nums;
  -moz-appearance: textfield;
  border: 0;
  padding: .3125rem 0;
  font-weight: 700;
}

.cart-line__qty input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.cart-line__qty input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.cart-line__qty input:focus {
  outline: 2px solid var(--green-bright);
  outline-offset: -2px;
}

.cart-step {
  background: var(--mist);
  width: 2rem;
  height: 2rem;
  color: var(--ink);
  font: inherit;
  cursor: pointer;
  border: 0;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
}

.cart-step:hover {
  background: var(--line);
}

.cart-step:focus-visible {
  outline: 2px solid var(--green-bright);
  outline-offset: -2px;
}

.cart-line__kg {
  text-align: right;
  font-weight: 700;
  font-size: var(--fs-sm);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.cart-line__del {
  width: 2rem;
  height: 2rem;
  color: var(--ink-45);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 50%;
  font-size: 1.25rem;
  line-height: 1;
}

.cart-line__del:hover {
  color: var(--red-ink);
  background: #fdf0f1;
}

.cart-line__del:focus-visible {
  outline: 2px solid var(--red);
  outline-offset: 1px;
}

.cart-empty {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin: 0;
  padding: 1.5rem 1.125rem;
}

.cart-panel__foot {
  border-top: 1px solid var(--line);
  background: var(--mist);
  font-size: var(--fs-sm);
  justify-content: space-between;
  align-items: baseline;
  padding: .75rem 1.125rem;
  font-weight: 700;
  display: flex;
}

.cart-panel__foot strong {
  color: var(--green);
  font-variant-numeric: tabular-nums;
  font-size: 1.1875rem;
  font-weight: 800;
}

@media (max-width: 560px) {
  .cart-panel {
    width: calc(100% - 1rem);
    left: .5rem;
  }

  .cart-line {
    grid-template-columns: minmax(0, 1fr) auto 2rem;
    grid-template-areas: "what what del"
                         "qty kg kg";
    row-gap: .375rem;
    padding-inline: .875rem;
  }

  .cart-line__what {
    grid-area: what;
  }

  .cart-line__qty {
    grid-area: qty;
    justify-self: start;
  }

  .cart-line__kg {
    grid-area: kg;
  }

  .cart-line__del {
    grid-area: del;
  }
}

.order-side {
  display: none;
}

@media (min-width: 1280px) {
  .order-layout {
    grid-template-columns: minmax(0, 1fr) clamp(20rem, 24vw, 26rem);
    align-items: start;
    gap: 1.5rem;
    display: grid;
  }

  .order-side:not([hidden]) {
    top: calc(var(--top-toolbar, 140px) + 1.5rem);
    max-height: calc(100dvh - var(--top-toolbar, 140px) - 3rem);
    border-radius: var(--r);
    box-shadow: var(--shadow);
    flex-direction: column;
    margin-top: 1.5rem;
    display: flex;
    position: sticky;
    overflow: hidden;
  }

  .order-side__cart {
    flex: auto;
    min-height: 0;
    display: flex;
  }

  .order-side .cart-panel {
    border: 1px solid var(--line);
    border-radius: var(--r) var(--r) 0 0;
    width: auto;
    min-height: 9rem;
    max-height: none;
    box-shadow: none;
    border-bottom: 0;
    flex: auto;
    animation: none;
    position: static;
  }

  .order-side .cart-panel__close, .order-side .cart-panel__foot {
    display: none;
  }

  .order-side .cart-line {
    grid-template-columns: minmax(0, 1fr) auto 2rem;
    grid-template-areas: "what what del"
                         "qty kg kg";
    row-gap: .375rem;
    padding-inline: 1rem;
  }

  .order-side .cart-line__what {
    grid-area: what;
  }

  .order-side .cart-line__qty {
    grid-area: qty;
    justify-self: start;
  }

  .order-side .cart-line__kg {
    grid-area: kg;
  }

  .order-side .cart-line__del {
    grid-area: del;
  }

  .order-side__sum {
    flex: none;
  }

  .order-side .totalbar__inner {
    background: var(--ink);
    color: #fff;
    flex-flow: column;
    align-items: stretch;
    gap: 0;
    max-width: none;
    margin: 0;
    padding: .875rem 1rem 1rem;
    display: flex;
  }

  .order-side .cart-btn {
    display: none;
  }

  .order-side .totalbar__stat {
    flex-direction: row;
    justify-content: space-between;
    align-items: baseline;
    gap: 1rem;
    padding: .3125rem 0;
    display: flex;
  }

  .order-side .totalbar__label {
    font-size: var(--fs-sm);
    color: #ffffffb3;
  }

  .order-side .totalbar__value {
    font-size: var(--fs-sm);
    letter-spacing: 0;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
    font-weight: 700;
  }

  .order-side .totalbar__value.is-kg {
    color: #fff;
  }

  .order-side .totalbar__stat--gross {
    border-top: 1px solid #ffffff2e;
    flex-wrap: wrap;
    margin-top: .375rem;
    padding-top: .625rem;
  }

  .order-side .totalbar__stat--gross .totalbar__label {
    color: #fff;
    font-weight: 700;
  }

  .order-side .totalbar__value--money {
    color: var(--lime-bright);
    font-size: 1.375rem;
    font-weight: 800;
  }

  .order-side .totalbar__note {
    text-align: right;
    flex-basis: 100%;
  }

  .order-side .totalbar__actions {
    grid-column: 1 / -1;
    grid-template-columns: 1fr 1fr;
    gap: .5rem;
    margin: 0;
    display: grid;
    margin-top: .875rem !important;
  }

  .order-side .totalbar__actions #send {
    font-size: var(--fs-sm);
    order: -1;
    grid-column: 1 / -1;
    padding-block: .75rem;
  }

  .order-side .totalbar .btn--ghost, .order-side .totalbar__actions .btn--ghost {
    color: #fff;
    box-shadow: inset 0 0 0 1.5px #fff6;
  }

  .order-side .totalbar__actions .btn--ghost:hover {
    color: var(--ink);
    background: #fff;
  }
}

.grid-table .t-price {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.t-price__v {
  font-weight: 700;
  display: block;
}

.t-price__note {
  color: var(--ink-45);
  cursor: help;
  font-size: .6875rem;
  display: block;
}

.t-price.is-off .t-price__v {
  color: #a9b2a3;
  -webkit-text-decoration: line-through #646f5d73;
  text-decoration: line-through #646f5d73;
}

.t-price.is-ask {
  font-size: var(--fs-xs);
  color: var(--ink-45);
  font-style: italic;
}

.t-price-sm {
  color: var(--ink-45);
  font-size: .6875rem;
  font-weight: 600;
  display: none;
}

.t-price.has-rabat .t-price__v {
  color: var(--green);
}

.t-price__list {
  color: var(--ink-45);
  font-size: .6875rem;
  font-weight: 500;
  display: block;
}

.t-price__rabat {
  color: var(--green);
  cursor: help;
  background: #e3f2e5;
  border-radius: 100px;
  margin-top: .125rem;
  padding: 0 .3125rem;
  font-size: .625rem;
  font-weight: 800;
  display: inline-block;
}

.rabat-note {
  border-left: 3px solid var(--green);
  color: var(--green-deep);
  font-size: var(--fs-sm);
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  background: #eff7ea;
  margin: .75rem 0 1rem;
  padding: .625rem .875rem;
  font-weight: 600;
}

.wh .rabat-note {
  margin: 0 0 1rem;
}

.t-amount {
  color: var(--green);
  font-variant-numeric: tabular-nums;
  font-size: .75rem;
  font-weight: 600;
  display: block;
}

.grid-table .t-total {
  white-space: nowrap;
}

.totalbar__value--sm {
  font-size: 1.0625rem;
}

.totalbar__value--money {
  color: var(--lime-bright);
  font-variant-numeric: tabular-nums;
  font-size: 1.25rem;
}

.totalbar__note {
  color: #ffffff9e;
  font-size: .6875rem;
  display: block;
}

.totalbar__stat--gross {
  flex-wrap: wrap;
}

.totalbar__value--sm, .totalbar__value--money {
  white-space: nowrap;
}

.totalbar__stat--vat, .totalbar__stat--rabat {
  display: none;
}

.order-side .totalbar__stat--rabat:not([hidden]) {
  display: flex;
}

.order-side .totalbar__stat--rabat[hidden] {
  display: none;
}

.order-side .totalbar__stat--rabat .totalbar__value {
  color: var(--lime-bright);
}

.order-side .totalbar__stat--vat {
  display: flex;
}

.cart-line__amount {
  color: var(--green);
  font-size: .6875rem;
  font-weight: 600;
  display: block;
}

.confirm__amount {
  color: var(--green);
  font-size: .75rem;
  font-weight: 600;
  display: block;
}

.confirm__summary {
  border-top: 2px solid var(--ink);
  background: var(--mist);
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 1rem 2rem;
  margin: 0;
  padding: 1rem 1.5rem;
  display: grid;
}

.confirm__summary .confirm__total {
  text-align: left;
  border: 0;
  padding: 0;
  font-size: 1.1875rem;
  line-height: 1.3;
}

.confirm__money {
  font-size: var(--fs-sm);
  font-variant-numeric: tabular-nums;
  grid-template-columns: auto auto;
  justify-content: end;
  gap: .25rem 1.5rem;
  margin: 0;
  padding: 0;
  display: grid;
}

.confirm__kgbig {
  letter-spacing: -.02em;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
  font-size: clamp(1.75rem, 4vw, 2.25rem);
  font-weight: 800;
  font-stretch: 110%;
  display: block;
}

.confirm__items {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  font-weight: 600;
  display: block;
}

.confirm__money dt {
  color: var(--ink-70);
}

.confirm__money dd {
  text-align: right;
  white-space: nowrap;
  margin: 0;
  font-weight: 700;
}

.confirm__money .is-grand {
  border-top: 1px solid var(--line);
  color: var(--ink);
  padding-top: .375rem;
  font-size: 1.0625rem;
  font-weight: 800;
}

.confirm__money dd.is-grand, .confirm__money .is-rabat {
  color: var(--green);
}

.confirm__money .confirm__note {
  font-weight: 500;
  font-size: var(--fs-xs);
  color: var(--ink-45);
  white-space: normal;
  grid-column: 1 / -1;
}

@media (max-width: 1279px) {
  .totalbar__stat--net {
    display: none;
  }
}

@media (max-width: 900px) {
  .grid-table .t-price {
    display: none;
  }

  .t-price-sm {
    display: block;
  }
}

@media (max-width: 560px) {
  .totalbar__value--money {
    font-size: 1.0625rem;
  }
}

.order__actions {
  flex-wrap: wrap;
  align-items: center;
}

.order__docnote {
  font-size: var(--fs-xs);
  color: var(--ink-45);
}

.docdlg {
  border-radius: var(--r);
  background: var(--mist);
  border: 0;
  width: min(60rem, 100vw - 2rem);
  max-height: calc(100dvh - 2rem);
  padding: 0;
  box-shadow: 0 30px 80px -20px #04301a8c;
}

.docdlg::backdrop {
  background: #06140a99;
}

.docdlg__tools {
  z-index: 1;
  background: var(--mist);
  border-bottom: 1px solid var(--line);
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .5rem;
  padding: .75rem 1rem;
  display: flex;
  position: sticky;
  top: 0;
}

.doc {
  color: #111;
  border: 1px solid var(--line);
  background: #fff;
  margin: 1rem;
  padding: clamp(1.25rem, 4vw, 2.5rem);
  font-size: .875rem;
  line-height: 1.45;
  position: relative;
}

.doc__stamp {
  border: 1.5px solid var(--red);
  color: var(--red-ink);
  letter-spacing: .04em;
  text-transform: uppercase;
  margin: 0;
  padding: .1875rem .5rem;
  font-size: .6875rem;
  font-weight: 800;
  position: absolute;
  top: .75rem;
  right: 1rem;
  transform: rotate(-2deg);
}

.doc__head {
  border-bottom: 2px solid #111;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem;
  display: flex;
}

.doc__party {
  align-items: flex-start;
  gap: .875rem;
  display: flex;
}

.doc__party > div {
  overflow-wrap: anywhere;
  flex-direction: column;
  min-width: 0;
  font-size: .8125rem;
  display: flex;
}

.doc__party {
  min-width: 0;
}

.doc__party strong {
  font-size: 1rem;
}

.doc__logo {
  width: 64px;
  height: auto;
}

.doc__title h2, .section .doc__title h2 {
  letter-spacing: .01em;
  text-transform: uppercase;
  margin: 0 0 .5rem;
  font-size: 1.75rem;
  font-stretch: 110%;
}

.doc__meta {
  grid-template-columns: auto auto;
  gap: .125rem 1rem;
  margin: 0;
  font-size: .8125rem;
  display: grid;
}

.doc__meta dt {
  color: #555;
}

.doc__meta dd {
  text-align: right;
  margin: 0;
  font-weight: 700;
}

.doc__buyer {
  border: 1px solid #ccc;
  flex-direction: column;
  max-width: 26rem;
  margin-bottom: 1.25rem;
  padding: .875rem 1rem;
  display: flex;
}

.doc__buyer h3 {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #555;
  margin: 0 0 .25rem;
  font-size: .6875rem;
}

.doc__ship {
  color: #555;
  margin-top: .25rem;
  font-size: .75rem;
}

.doc__tablewrap {
  overflow-x: auto;
}

.doc__table {
  border-collapse: collapse;
  font-variant-numeric: tabular-nums;
  width: 100%;
  font-size: .8125rem;
}

.doc__table th {
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .03em;
  border-bottom: 1.5px solid #111;
  padding: .4375rem .5rem;
  font-size: .6875rem;
}

.doc__table td {
  vertical-align: top;
  border-bottom: 1px solid #ddd;
  padding: .375rem .5rem;
}

.doc__table .num {
  text-align: right;
  white-space: nowrap;
}

.doc__totals {
  font-variant-numeric: tabular-nums;
  grid-template-columns: auto auto;
  justify-content: end;
  gap: .25rem 1.5rem;
  margin: 1rem 0 0;
  display: grid;
}

.doc__totals dt {
  color: #555;
}

.doc__totals dd {
  text-align: right;
  margin: 0;
  font-weight: 600;
}

.doc__totals .doc__grand {
  color: #111;
  border-top: 1.5px solid #111;
  padding-top: .375rem;
  font-size: 1.0625rem;
  font-weight: 800;
}

.doc__foot {
  color: #444;
  border-top: 1px solid #ddd;
  margin-top: 1.75rem;
  padding-top: .875rem;
  font-size: .75rem;
}

.doc__foot p {
  margin: 0 0 .25rem;
}

.doc__proto {
  color: var(--red-ink);
}

.doc__kind {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #555;
  margin: -.25rem 0 .5rem;
  font-size: .75rem;
  font-weight: 700;
}

.doc__totals .doc__rabat {
  color: var(--green-deep);
}

.doc__adv {
  border: 1.5px solid #111;
  margin-top: 1.5rem;
  padding: 1rem 1.125rem;
}

.doc__adv h3 {
  text-transform: uppercase;
  letter-spacing: .05em;
  margin: 0 0 .125rem;
  font-size: .8125rem;
}

.doc__advhow {
  color: #555;
  margin: 0;
  font-size: .8125rem;
}

.doc__totals--adv {
  margin-top: .5rem;
}

@media (max-width: 560px) {
  .doc {
    margin: .5rem;
    font-size: .8125rem;
  }

  .doc__table th:nth-child(4), .doc__table td:nth-child(4), .doc__table th:first-child, .doc__table td:first-child {
    display: none;
  }
}

@media print {
  html.print-doc body * {
    visibility: hidden;
  }

  html.print-doc .doc, html.print-doc .doc * {
    visibility: visible;
  }

  html.print-doc .docdlg {
    width: auto;
    max-height: none;
    box-shadow: none;
    background: #fff;
    position: absolute;
    inset: 0;
    overflow: visible;
  }

  html.print-doc .docdlg::backdrop {
    background: none;
  }

  html.print-doc .doc {
    border: 0;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }

  html.print-doc .docdlg__tools {
    display: none;
  }
}

.news-sub {
  padding-block: 0 clamp(2.25rem, 5vw, 3.5rem);
}

.news-sub__inner {
  border-radius: var(--r-lg);
  color: #fff;
  width: calc(100% - 2 * var(--gut));
  max-width: calc(var(--wrap) - 2 * var(--gut));
  background: var(--green-deep) radial-gradient(circle 22rem at 92% -30%, #bede1a3d, transparent 70%);
  isolation: isolate;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: center;
  gap: clamp(1.5rem, 4vw, 3.5rem);
  display: grid;
  position: relative;
  overflow: hidden;
  padding: clamp(1.5rem, 4vw, 2.75rem) !important;
}

.news-sub__inner:after {
  content: "";
  z-index: -1;
  aspect-ratio: 136 / 150;
  pointer-events: none;
  background: #0f4a28;
  height: min(10rem, 90%);
  position: absolute;
  bottom: 0;
  right: clamp(.75rem, 3vw, 2.5rem);
  -webkit-mask: url("/assets/newsletter-rooster.svg") 100% 100% / contain no-repeat;
  mask: url("/assets/newsletter-rooster.svg") 100% 100% / contain no-repeat;
}

@media (max-width: 760px) {
  .news-sub__inner:after {
    height: 7rem;
  }
}

.news-sub h2, .section .news-sub h2 {
  color: #fff;
  margin-bottom: .5rem;
  font-size: clamp(1.5rem, 3vw, 2.125rem);
  font-stretch: 110%;
}

.news-sub__text p {
  color: #ffffffc7;
  max-width: 42ch;
  margin: 0;
}

.news-sub__fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem 1rem;
  display: grid;
}

.news-sub .field label {
  color: #ffffffd9;
}

.news-sub .field input {
  background: #fff;
  border-color: #0000;
}

.news-sub .field input:focus {
  border-color: var(--lime-bright);
  outline: 3px solid #bede1a59;
}

.news-sub .check {
  color: #fffc;
  font-size: var(--fs-xs);
  margin: .5rem 0 1rem;
}

.news-sub .check a {
  color: var(--lime-bright);
}

.news-sub .check input {
  accent-color: var(--lime-bright);
}

.news-sub .alert {
  background: #fdf0f1;
}

.news-sub__done {
  font-size: var(--fs-sm);
  color: var(--lime-bright);
  margin: .875rem 0 0;
  font-weight: 700;
}

@media (max-width: 760px) {
  .news-sub__inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 420px) {
  .news-sub__fields {
    grid-template-columns: 1fr;
  }
}

.pr-dl {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin: .5rem 0 1rem;
  display: flex;
}

.pr-dl__label {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  font-weight: 700;
}

#print-sheet {
  display: none;
}

@media print {
  html.print-sheet body > :not(#print-sheet) {
    display: none !important;
  }

  html.print-sheet body {
    background: #fff;
  }

  html.print-sheet #print-sheet {
    color: #111;
    font-size: 9pt;
    line-height: 1.35;
    display: block;
  }

  #print-sheet .ps__head {
    border-bottom: 1.5pt solid #111;
    align-items: center;
    gap: 12pt;
    margin-bottom: 10pt;
    padding-bottom: 8pt;
    display: flex;
  }

  #print-sheet .ps__logo {
    width: 52pt;
    height: auto;
  }

  #print-sheet h1 {
    margin: 0;
    font-size: 17pt;
  }

  #print-sheet .ps__date {
    color: #007a2e;
    margin: 2pt 0 0;
    font-weight: 700;
  }

  #print-sheet .ps__co {
    text-align: right;
    color: #444;
    flex-direction: column;
    margin-left: auto;
    font-size: 7.5pt;
    display: flex;
  }

  #print-sheet .ps__sec {
    margin-bottom: 10pt;
  }

  #print-sheet h2 {
    break-after: avoid;
    margin: 8pt 0 4pt;
    font-size: 10.5pt;
  }

  #print-sheet table {
    border-collapse: collapse;
    font-variant-numeric: tabular-nums;
    width: 100%;
  }

  #print-sheet thead {
    display: table-header-group;
  }

  #print-sheet th {
    text-align: left;
    text-transform: uppercase;
    letter-spacing: .02em;
    border-bottom: 1pt solid #111;
    padding: 3pt 4pt;
    font-size: 7.5pt;
  }

  #print-sheet td {
    border-bottom: .5pt solid #ccc;
    padding: 2.5pt 4pt;
  }

  #print-sheet tr {
    break-inside: avoid;
  }

  #print-sheet .num {
    text-align: right;
    white-space: nowrap;
  }

  #print-sheet .ps__notes {
    color: #444;
    border-top: .5pt solid #999;
    margin-top: 10pt;
    padding-top: 6pt;
    font-size: 7.5pt;
  }

  #print-sheet .ps__notes p {
    margin: 0 0 2pt;
  }

  #print-sheet .ps__gen {
    color: #777;
  }

  #print-sheet .ps__intro {
    align-items: flex-start;
    gap: 14pt;
    margin-bottom: 10pt;
    display: flex;
  }

  #print-sheet .ps__photo {
    object-fit: contain;
    border: .5pt solid #ccc;
    flex: none;
    width: 150pt;
    max-height: 170pt;
  }

  #print-sheet .ps__text {
    font-size: 8.5pt;
  }

  #print-sheet .ps__text p {
    margin: 0 0 4pt;
  }

  #print-sheet .ps__text h3 {
    margin: 6pt 0 2pt;
    font-size: 9pt;
  }

  #print-sheet .ps__sec--spec th.num, #print-sheet .ps__sec--spec td.num {
    text-align: center;
  }

  #print-sheet .ps__textrow td {
    white-space: normal;
    color: #333;
    font-size: 7.5pt;
  }

  #print-sheet .ps__hl {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    background: #e8f3dc;
    font-weight: 700;
  }

  #print-sheet th.ps__hl {
    color: #fff;
    background: #007a2e;
  }
}

@media (max-width: 900px) {
  .hero__inner, .about, .contact-grid, .login {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .nav {
    display: none;
  }

  .nav--open {
    background: var(--white);
    border-bottom: 1px solid var(--line);
    padding: 1rem var(--gut);
    flex-direction: column;
    align-items: stretch;
    gap: .25rem;
    display: flex;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
  }

  .nav--open a:not(.btn) {
    padding: .5rem 0;
  }

  .masthead__logo img {
    height: 56px;
  }

  .nav__toggle {
    display: grid;
  }

  .masthead {
    position: static;
  }

  .toolbar {
    top: 0;
  }

  .b2b-body {
    --top-masthead: 0px;
  }

  .grid-table thead th {
    top: var(--top-toolbar, 60px);
  }

  .totalbar__value {
    font-size: 1.3125rem;
  }

  .totalbar__actions {
    width: 100%;
    margin-left: 0;
  }

  .totalbar__actions .btn {
    flex: auto;
  }
}

@media (max-width: 560px) {
  .grid-table .t-name, .grid-table th.col-name {
    display: none;
  }

  .t-qty input {
    width: 4.25rem;
  }
}

@media (max-width: 760px) {
  .toolbar__filters {
    display: none;
  }

  .toolbar__selects {
    display: flex;
  }

  .toolbar__inner {
    flex-direction: column;
    align-items: stretch;
    min-width: 0;
  }

  .search {
    flex: auto;
    min-width: 0;
  }
}

@media (max-width: 560px) {
  .grid-table thead th, .grid-table tbody td {
    padding-inline: .5rem;
  }

  .grid-table thead th {
    font-size: .75rem;
  }

  .t-code {
    white-space: normal;
    overflow-wrap: anywhere;
    font-size: .8125rem;
    line-height: 1.2;
  }

  .t-kg, .t-total {
    font-size: .8125rem;
  }

  .group-row th {
    padding-inline: .5rem;
  }
}

@media (max-width: 420px) {
  .t-qty input {
    width: 3.625rem;
  }

  .grid-table thead th, .grid-table tbody td {
    padding-inline: .375rem;
  }
}

@media (max-width: 340px) {
  .grid-table thead th:nth-child(5), .grid-table .t-total {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, :before, :after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }

  .cat:hover .cat__img {
    transform: none !important;
  }
}

@media print {
  html.rv-on .rv {
    opacity: 1 !important;
    transform: none !important;
  }

  .masthead, .toolbar, .totalbar__actions, .nav, .misc__add, .cart-btn, .cart-panel {
    display: none;
  }

  .totalbar {
    color: #000;
    background: #fff;
    border-top: 2px solid #000;
    position: static;
  }

  .grid-table thead th {
    color: #000;
    background: #fff;
    border-bottom: 2px solid #000;
    position: static;
  }

  body, .b2b-body {
    background: #fff;
  }
}

.xl {
  padding-block: 1.5rem 3rem;
}

.xl__steps {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  max-width: 56rem;
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
  display: grid;
}

.xl__step {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  flex-direction: column;
  align-items: flex-start;
  gap: .5rem;
  padding: 1.25rem 1.25rem 1.375rem;
  display: flex;
}

.xl__step h2 {
  margin: 0;
  font-size: 1.0625rem;
  font-stretch: 108%;
}

.xl__step p {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin: 0;
}

.xl__step .btn {
  margin-top: auto;
}

.xl .notice {
  max-width: 56rem;
}

@media (max-width: 760px) {
  .xl__steps {
    grid-template-columns: minmax(0, 1fr);
  }
}

.profile .notice {
  max-width: 56rem;
  margin-bottom: 1.25rem;
}

.profile__view {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  max-width: 56rem;
  display: grid;
}

.profile__view .profile__card {
  padding: 1.125rem 1.25rem 1.25rem;
}

.profile__h {
  margin: 0 0 .75rem;
  font-size: 1.0625rem;
  font-stretch: 106%;
}

.profile__dl {
  font-size: var(--fs-sm);
  grid-template-columns: auto minmax(0, 1fr);
  gap: .375rem 1rem;
  margin: 0;
  display: grid;
}

.profile__dl dt {
  color: var(--ink-70);
}

.profile__dl dd {
  overflow-wrap: anywhere;
  margin: 0;
  font-weight: 600;
}

.profile__loc {
  font-size: var(--fs-sm);
  margin: 0 0 .5rem;
}

.profile__view .profile__hint {
  margin: 0;
}

@media (max-width: 760px) {
  .profile__view {
    grid-template-columns: minmax(0, 1fr);
  }
}

.xl__up {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  max-width: 56rem;
  margin: 0 0 1.5rem;
  padding: 1.25rem;
}

.xl__up > p {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  margin: 0 0 1rem;
}

.xl__drop {
  text-align: center;
  border: 2px dashed var(--line);
  border-radius: var(--r-sm);
  background: var(--mist);
  cursor: pointer;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .25rem;
  min-height: 6.5rem;
  margin-bottom: 1rem;
  padding: 1rem;
  transition: border-color .15s, background-color .15s;
  display: flex;
  position: relative;
}

.xl__drop:hover, .xl__drop.is-over {
  border-color: var(--green);
  background: #eff7ea;
}

.xl__drop:focus-within {
  outline: 2px solid var(--green);
  outline-offset: 2px;
}

.xl__drop input {
  opacity: 0;
  width: 1px;
  height: 1px;
  position: absolute;
}

.xl__drop-main {
  font-weight: 700;
  font-size: var(--fs-sm);
  color: var(--green-deep);
  overflow-wrap: anywhere;
}

.xl__drop-sub {
  font-size: var(--fs-xs);
  color: var(--ink-45);
}

.xl__upform textarea {
  width: 100%;
  font: inherit;
  font-size: var(--fs-sm);
  border: 1.5px solid var(--line);
  border-radius: var(--r-sm);
  resize: vertical;
  padding: .625rem .75rem;
}

.xl__upform .alert {
  margin: 0 0 .75rem;
}

.xl__upacts {
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem 1rem;
  display: flex;
}

.xl__status {
  font-size: var(--fs-sm);
  color: var(--green-deep);
  font-weight: 600;
}

.xl__stage {
  align-items: center;
  gap: .625rem;
  margin: 1.75rem 0 .875rem;
  font-size: 1.25rem;
  font-stretch: 110%;
  display: flex;
}

.xl__num {
  background: var(--green);
  color: #fff;
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 1.875rem;
  height: 1.875rem;
  font-size: .9375rem;
  font-weight: 800;
  font-stretch: 100%;
  display: grid;
}

.xl__sent {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  max-width: 56rem;
  margin: 0 0 1.5rem;
  padding: .5rem 1.25rem;
}

.xl__sent ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.xl__sentrow {
  border-top: 1px solid var(--line-2);
  font-size: var(--fs-sm);
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .25rem 1rem;
  padding: .5rem 0;
  display: flex;
}

.xl__sentrow:first-child {
  border-top: 0;
}

.xl__sentname {
  overflow-wrap: anywhere;
}

.xl__sentst {
  color: var(--ink-70);
  font-weight: 700;
}

.xl__sentrow.is-done .xl__sentst {
  color: var(--green);
}

.xl__sentrow.is-rejected .xl__sentst {
  color: #8a2323;
}

.ordermode {
  background: var(--white);
  border-bottom: 1px solid var(--line);
  padding-block: 1rem;
}

.ordermode__inner {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .875rem;
  display: grid;
}

.ordermode.is-choosing {
  background: var(--mist);
  border-bottom: 0;
  padding-block: clamp(2rem, 6vw, 4rem);
}

.ordermode__q {
  margin-bottom: 1.25rem;
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-stretch: 110%;
}

.ordermode.is-choosing .ordermode__inner {
  gap: 1.25rem;
}

.ordermode.is-choosing .ordermode__btn {
  border-radius: var(--r-lg);
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 1.25rem;
  min-height: 18rem;
  padding: 2.25rem 2.25rem 5.75rem;
  transition: border-color .15s, box-shadow .15s, transform .15s;
  position: relative;
  box-shadow: 0 10px 30px -18px #04301a59;
}

.ordermode.is-choosing .ordermode__btn:hover {
  border-color: var(--green);
  transform: translateY(-2px);
  box-shadow: 0 16px 36px -18px #04301a73;
}

.ordermode.is-choosing .ordermode__ic {
  background: #eff7ea;
  width: 5rem;
  height: 5rem;
  padding: 1.125rem;
}

.ordermode.is-choosing .ordermode__txt {
  gap: .5rem;
}

.ordermode.is-choosing .ordermode__h {
  font-size: clamp(1.375rem, 2.2vw, 1.75rem);
}

.ordermode.is-choosing .ordermode__p {
  max-width: 34ch;
  font-size: 1.0625rem;
}

.ordermode.is-choosing .ordermode__btn:after {
  content: "";
  background: var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 1.375rem no-repeat;
  border-radius: 50%;
  width: 2.75rem;
  height: 2.75rem;
  transition: transform .15s, background-color .15s;
  position: absolute;
  bottom: 1.75rem;
  left: 2.25rem;
}

.ordermode.is-choosing .ordermode__btn:hover:after {
  background-color: var(--green-mid);
  transform: translateX(4px);
}

.ordermode__btn {
  width: 100%;
  font: inherit;
  text-align: left;
  color: var(--ink);
  background: var(--white);
  border: 2px solid var(--line);
  border-radius: var(--r);
  cursor: pointer;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.125rem;
  transition: border-color .15s, background-color .15s, box-shadow .15s;
  display: flex;
}

.ordermode__btn:hover {
  border-color: var(--green-bright);
}

.ordermode__btn:focus-visible {
  outline-offset: 2px;
  outline: 3px solid #0090304d;
}

.ordermode__btn[aria-pressed="true"] {
  border-color: var(--green);
  box-shadow: inset 0 0 0 1px var(--green);
  background: #eff7ea;
}

.ordermode__ic {
  background: var(--mist);
  width: 2.75rem;
  height: 2.75rem;
  color: var(--green);
  border-radius: 50%;
  flex: none;
  padding: .5rem;
}

.ordermode__btn[aria-pressed="true"] .ordermode__ic {
  background: var(--green);
  color: #fff;
}

.ordermode__txt {
  flex-direction: column;
  gap: .125rem;
  min-width: 0;
  display: flex;
}

.ordermode__h {
  font-size: 1.0625rem;
  font-weight: 800;
  font-stretch: 106%;
}

.ordermode__p {
  font-size: var(--fs-sm);
  color: var(--ink-70);
  line-height: 1.35;
}

@media (max-width: 640px) {
  .ordermode__inner {
    gap: .5rem;
  }

  .ordermode__btn {
    flex-direction: column;
    align-items: flex-start;
    gap: .5rem;
    padding: .75rem;
  }

  .ordermode__p {
    display: none;
  }

  .ordermode__h {
    font-size: .9375rem;
  }

  .ordermode.is-choosing .ordermode__inner {
    grid-template-columns: 1fr;
    gap: .75rem;
  }

  .ordermode.is-choosing .ordermode__btn {
    gap: 1rem;
    min-height: 0;
    padding: 1.5rem 1.5rem 5rem;
  }

  .ordermode.is-choosing .ordermode__btn:after {
    bottom: 1.25rem;
    left: 1.5rem;
  }

  .ordermode.is-choosing .ordermode__ic {
    width: 4rem;
    height: 4rem;
    padding: .875rem;
  }

  .ordermode.is-choosing .ordermode__p {
    font-size: var(--fs-sm);
    display: block;
  }
}

.acct {
  flex: none;
  position: relative;
}

.acct__btn {
  max-width: 16rem;
  font: inherit;
  font-size: var(--fs-sm);
  color: var(--ink);
  background: var(--white);
  border: 1.5px solid var(--line);
  cursor: pointer;
  border-radius: 100px;
  align-items: center;
  gap: .5rem;
  padding: .3125rem .625rem .3125rem .3125rem;
  font-weight: 700;
  transition: border-color .15s;
  display: inline-flex;
}

.acct__btn:hover, .acct.is-open .acct__btn {
  border-color: var(--green);
}

.acct__btn:focus-visible {
  outline-offset: 2px;
  outline: 3px solid #0090304d;
}

.acct__ic {
  background: var(--green);
  color: #fff;
  border-radius: 50%;
  flex: none;
  width: 2rem;
  height: 2rem;
  padding: .3125rem;
}

.acct__name {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.acct__chev {
  color: var(--ink-70);
  flex: none;
  transition: transform .15s;
}

.acct.is-open .acct__chev {
  transform: rotate(180deg);
}

.acct__menu {
  z-index: 60;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r);
  min-width: 15rem;
  padding: .375rem;
  position: absolute;
  top: calc(100% + .5rem);
  right: 0;
  box-shadow: 0 18px 40px -16px #04301a59;
}

.acct__menu[hidden] {
  display: none;
}

.acct__who {
  border-bottom: 1px solid var(--line-2);
  font-size: var(--fs-sm);
  flex-direction: column;
  max-width: none;
  margin: 0 0 .25rem;
  padding: .5rem .625rem .625rem;
  display: flex;
}

.acct__who strong {
  overflow-wrap: anywhere;
}

.acct__who span {
  font-size: var(--fs-xs);
  color: var(--ink-70);
  overflow-wrap: anywhere;
}

.acct__item {
  width: 100%;
  font: inherit;
  font-size: var(--fs-sm);
  text-align: left;
  color: var(--ink);
  border-radius: var(--r-sm);
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: .625rem;
  padding: .625rem;
  font-weight: 600;
  display: flex;
}

.acct__item svg {
  color: var(--green);
  flex: none;
}

.acct__item:hover, .acct__item:focus-visible {
  background: var(--mist);
  outline: none;
}

.acct__item[aria-current="page"] {
  background: #eff7ea;
}

.acct__item--out {
  border-top: 1px solid var(--line-2);
  border-radius: 0 0 var(--r-sm) var(--r-sm);
  margin-top: .25rem;
}

.acct__item--out svg {
  color: #8a2323;
}

@media (max-width: 1279px) {
  .acct {
    order: 1;
    margin-left: auto;
  }

  .masthead__inner:has(.acct:not([hidden])) .nav__toggle {
    order: 2;
    margin-left: 0;
  }
}

@media (max-width: 560px) {
  .acct__btn {
    padding-right: .5rem;
  }

  .acct__name {
    display: none;
  }
}

/*# sourceMappingURL=styles_0m71a4k9u4f_z._.css.map*/