/* PRODUCT CARDS */

.product-catalog{
  max-width:1362px;
  margin:0 auto;
  padding:0 0 115px;
}

.product-catalog__head{
  display:grid;
  grid-template-columns:1fr 360px;
  gap:80px;
  align-items:end;
  padding:100px 0 55px;
  border-top:1px solid var(--ink);
}

.product-catalog__head h2{
  margin:20px 0 0;
  font-family:var(--display);
  font-size:clamp(55px,5.5vw,78px);
  line-height:.88;
  letter-spacing:-.07em;
}

.product-catalog__head h2 em{
  color:var(--teal);
  font-style:normal;
}

.product-catalog__head p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
  max-width:340px;
}

.product-catalog__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  border-top:1px solid var(--ink);
  border-left:1px solid var(--line);
}

.product-card{
  position:relative;
  display:block;
  min-height:420px;
  color:var(--ink);
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  overflow:hidden;
  text-decoration:none;
  transition:background .2s ease;
}

.product-card:hover{
  background:#F0F8F6;
}

.product-card--large{
  grid-row:span 2;
  min-height:840px;
}

.product-card__top{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:space-between;
  padding:22px 24px;
  color:var(--muted);
  font-size:9px;
  font-weight:600;
  letter-spacing:.08em;
}

.product-card__top span:first-child{
  color:var(--teal);
}

.product-card__visual{
  position:absolute;
  inset:0;
  overflow:hidden;
}

.product-card__visual--grape{
  background:#E5F6F2;
}

.product-card__visual--chocolate{
  background:#EDE6DE;
}

.product-card__visual--onion{
  background:#E8F1E7;
}

.product-card__visual--milk{
  background:#EEF0EC;
}

.product-card__visual--apple{
  background:#E7F4EF;
}

.product-card__word{
  position:absolute;
  left:24px;
  bottom:88px;
  font-family:var(--display);
  font-size:clamp(48px,5vw,78px);
  line-height:.82;
  letter-spacing:-.075em;
  color:var(--teal);
}

.product-card--large .product-card__word{
  font-size:clamp(70px,7vw,110px);
}

.product-card__status{
  position:absolute;
  right:24px;
  bottom:82px;
  padding:10px 12px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.08em;
}

.product-card__status--danger{
  background:var(--teal);
  color:#fff;
}

.product-card__status--caution{
  background:#D8E7DE;
  color:var(--teal);
}

.product-card__status--safe{
  background:var(--mint);
  color:var(--teal);
}

.product-card__bottom{
  position:absolute;
  z-index:3;
  left:0;
  right:0;
  bottom:0;
  min-height:67px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 24px;
  background:rgba(250,252,251,.94);
  border-top:1px solid var(--line);
}

.product-card__bottom h3{
  margin:0;
  font-family:var(--display);
  font-size:24px;
  line-height:1;
  letter-spacing:-.045em;
}

.product-card__bottom p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:9px;
}

.product-card__arrow{
  color:var(--teal);
  font-size:20px;
}

.product-card--text{
  padding:0;
  background:var(--teal);
  color:#fff;
}

.product-card--text:hover{
  background:#125853;
}

.product-card--text .product-card__top{
  color:#BBDDD7;
}

.product-card--text .product-card__top span:first-child{
  color:var(--mint);
}

.product-card__text{
  position:absolute;
  left:24px;
  bottom:50px;
  max-width:330px;
}

.product-card__text>span{
  display:block;
  margin-bottom:30px;
  color:var(--mint);
  font-family:var(--display);
  font-size:55px;
  line-height:.7;
}

.product-card__text h3{
  margin:0 0 15px;
  font-family:var(--display);
  font-size:48px;
  line-height:.87;
  letter-spacing:-.065em;
}

.product-card__text p{
  max-width:270px;
  margin:0;
  color:#CBE0DC;
  font-size:11px;
  line-height:1.5;
}

.product-card--text>.product-card__arrow{
  position:absolute;
  right:24px;
  bottom:26px;
  color:var(--mint);
}

@media(max-width:900px){
  .product-catalog{
    margin-left:20px;
    margin-right:20px;
  }

  .product-catalog__head{
    grid-template-columns:1fr;
    gap:30px;
  }

  .product-catalog__grid{
    grid-template-columns:1fr 1fr;
  }

  .product-card--large{
    grid-row:span 1;
    min-height:500px;
    grid-column:1 / -1;
  }
}

@media(max-width:650px){
  .product-catalog{
    padding-bottom:75px;
  }

  .product-catalog__head{
    padding:70px 0 40px;
  }

  .product-catalog__head h2{
    font-size:52px;
  }

  .product-catalog__grid{
    grid-template-columns:1fr;
  }

  .product-card,
  .product-card--large{
    min-height:360px;
  }

  .product-card--large{
    grid-column:auto;
  }

  .product-card__word,
  .product-card--large .product-card__word{
    font-size:62px;
  }

  .product-card__status{
    bottom:78px;
  }
}

/* v166.2: unified directory layout */
.product-directory{max-width:1362px;margin:0 auto;padding:0 0 120px}
.product-directory__head{display:grid;grid-template-columns:1fr 360px;gap:80px;align-items:end;padding:90px 0 45px;border-top:1px solid var(--ink)}
.product-directory__head h2{margin:18px 0 0;font-family:var(--display);font-size:clamp(52px,5vw,74px);line-height:.88;letter-spacing:-.07em}
.product-directory__head h2 em{color:var(--teal);font-style:normal}
.product-directory__head p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}
.product-directory__search{display:grid;grid-template-columns:28px 1fr auto;align-items:center;min-height:62px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);gap:12px}
.product-directory__search span{color:var(--teal);font-size:18px}
.product-directory__search input{min-width:0;border:0;background:transparent;outline:0;font:inherit;color:var(--ink);font-size:14px}
.product-directory__search button{border:0;background:var(--teal);color:#fff;padding:13px 18px;font:600 11px var(--body);cursor:pointer}
.product-filters{display:flex;flex-wrap:wrap;gap:8px;padding:24px 0 18px}
.product-filter{border:1px solid var(--line);background:#fff;color:var(--muted);padding:9px 12px;font:600 9px var(--body);letter-spacing:.04em;cursor:pointer}
.product-filter span{margin-left:5px;color:var(--teal)}
.product-filter.is-active{background:#EAF7F4;border-color:#BFE7DF;color:var(--teal)}
.product-directory__meta{display:flex;justify-content:space-between;align-items:center;min-height:44px;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px}
.product-directory__meta button{border:0;background:none;color:var(--teal);font:600 10px var(--body);cursor:pointer}
.product-directory__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(285px,auto);border-left:1px solid var(--line);border-top:1px solid var(--line)}
.product-directory-card{min-width:0;min-height:285px;height:100%;display:flex;flex-direction:column;color:var(--ink);text-decoration:none;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .18s ease}
.product-directory-card:hover{background:#F0F8F6}
.product-directory-card[hidden]{display:none!important}
.product-directory-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;min-height:58px;padding:18px 20px;color:var(--muted);font-size:8px;font-weight:600;line-height:1.35;letter-spacing:.08em}
.product-directory-card__top span:first-child{flex:0 0 auto;color:var(--teal)}
.product-directory-card__top span:last-child{min-width:0;max-width:78%;text-align:right;overflow-wrap:anywhere}
.product-directory-card__body{flex:1;min-width:0;padding:26px 20px 24px}
.product-directory-card__body h2{margin:0 0 13px;font-family:var(--display);font-size:clamp(28px,2.35vw,36px);line-height:.94;letter-spacing:-.06em;overflow-wrap:anywhere;hyphens:auto}
.product-directory-card__body p{margin:0;color:var(--muted);font-size:11px;line-height:1.55;max-width:390px}
.product-directory-card__bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-top:1px solid var(--line);background:rgba(250,252,251,.82)}
.product-directory-card__status{display:inline-block;padding:7px 9px;font-size:7px;font-weight:700;letter-spacing:.06em;line-height:1.2}
.product-directory-card__status--danger{background:var(--teal);color:#fff}.product-directory-card__status--safe{background:var(--mint);color:var(--teal)}.product-directory-card__status--caution{background:#DCE9E4;color:var(--teal)}
.product-directory-card__arrow{color:var(--teal);font-size:18px}
.product-directory__empty{padding:60px 20px;border:1px solid var(--line);border-top:0;text-align:center}.product-directory__empty[hidden]{display:none}.product-directory__empty strong{font-family:var(--display);font-size:28px}.product-directory__empty p{color:var(--muted);font-size:12px}
.products-hero--directory .products-hero__right{min-height:300px}.products-note--directory{bottom:45px}.products-note--directory p{margin:12px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.product-tool-link--primary{padding:13px 16px;background:var(--teal);color:#fff!important;font-weight:600}
@media(max-width:900px){.product-directory{margin:0 20px}.product-directory__head{grid-template-columns:1fr;gap:30px}.product-directory__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(270px,auto)}.product-directory-card{min-height:270px}.product-directory-card__body h2{font-size:32px}}
@media(max-width:650px){.product-directory{padding-bottom:80px}.product-directory__head{padding-top:70px}.product-directory__search{grid-template-columns:22px 1fr}.product-directory__search button{grid-column:1/-1;margin-bottom:10px}.product-directory__grid{grid-template-columns:1fr;grid-auto-rows:minmax(235px,auto)}.product-directory-card{min-height:235px}.product-directory-card__top{min-height:50px;padding:16px}.product-directory-card__body{padding:20px 16px}.product-directory-card__body h2{font-size:32px}.product-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:12px}.product-filter{white-space:nowrap}.products-hero--directory .products-hero__right{min-height:220px}}
/* v194 visual polish: stable card rhythm for long disease/parasite categories */
.product-directory-card__top{min-height:76px;align-items:flex-start}
.product-directory-card__top span:last-child{overflow-wrap:anywhere;word-break:normal}
.product-directory-card__body{display:flex;flex-direction:column;justify-content:flex-start}
.product-directory-card__body h2{font-family:var(--display);font-weight:600}
@media(max-width:900px){.product-directory-card__top{min-height:72px}}
@media(max-width:650px){.product-directory-card__top{min-height:62px}.product-directory-card__body h2{font-size:30px;line-height:.98}}


/* Final review: clearer card action, especially on narrow screens */
.product-directory-card__bottom{
  min-height:62px;
  border-top:1px solid var(--teal);
  background:#F0F8F6;
}
.product-directory-card__arrow{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--teal);
  background:var(--bg);
  color:var(--teal);
  font-size:20px;
  transition:background .18s ease,color .18s ease;
}
.product-directory-card:hover .product-directory-card__arrow,
.product-directory-card:focus-visible .product-directory-card__arrow{
  background:var(--teal);
  color:#fff;
}
.product-directory-card:focus-visible{outline:3px solid var(--mint);outline-offset:3px}
@media(max-width:650px){
  .product-directory-card__bottom{min-height:64px;padding:12px 16px}
  .product-directory-card__status{font-size:8px;padding:8px 10px}
  .product-directory-card__arrow{width:38px;height:38px;flex-basis:38px}
}
