/* Дополнительные стили поверх Tailwind CDN */
@font-face {
  font-family: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 100 700;
  font-display: block;
  src: url('../fonts/material-symbols-outlined.woff2') format('woff2');
}
/* Не overflow:hidden — иначе обрезаются выпадающие «О компании» / «Кабинет» */
.site-header-top {
  overflow: visible;
}
.site-header-nav-dropdown {
  z-index: 70;
}
body {
  font-family: 'Work Sans', sans-serif;
}
h1, h2, h3, .font-headline {
  font-family: 'Space Grotesk', sans-serif;
}
.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  font-feature-settings: 'liga';
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
html:not(.icons-ready) .material-symbols-outlined {
  visibility: hidden;
}
.aktsiya-scroll {
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: #496455 rgba(231, 233, 229, 0.8);
}
.aktsiya-scroll::-webkit-scrollbar {
  height: 6px;
}
.aktsiya-scroll::-webkit-scrollbar-track {
  background: rgba(231, 233, 229, 0.6);
  border-radius: 4px;
}
.aktsiya-scroll::-webkit-scrollbar-thumb {
  background: #496455;
  border-radius: 4px;
}
.hero-gallery-scroll {
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  width: 100%;
}
.hero-gallery-scroll .hero-slide {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
}
.hero-gallery-scroll::-webkit-scrollbar {
  display: none;
}
.product-video-embed iframe {
  border: 0;
  display: block;
}
@media (hover: hover) {
  .group\/hero .hero-nav-arrow {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease, background-color 0.15s ease, border-color 0.15s ease;
  }
  .group\/hero:hover .hero-nav-arrow,
  .group\/hero:focus-within .hero-nav-arrow {
    opacity: 1;
    pointer-events: auto;
  }
}

/* Выпадающий каталог: горизонтальный свайп колонок без полосы прокрутки */
.catalog-nav-columns {
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.catalog-nav-columns::-webkit-scrollbar {
  display: none;
}

/* Главная: горизонтальная полоса категорий — без видимой полосы (стрелки / свайп) */
.home-catalog-scroll {
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* старые Edge/IE: без полос */
}
.home-catalog-scroll::-webkit-scrollbar {
  /* WebKit / Chromium / Safari: горизонтальная полоса = height, вертикаль = width */
  display: none;
  width: 0;
  height: 0;
  background: transparent;
}
.home-catalog-scroll::-webkit-scrollbar-track,
.home-catalog-scroll::-webkit-scrollbar-thumb {
  display: none;
  background: transparent;
}
/* Ширина карточки под ~4 видимых в max-w-screen-2xl (≈1280px) с gap 0.75rem */
.home-catalog-scroll .home-catalog-card {
  flex: 0 0 288px;
  width: 288px;
}
@media (max-width: 639px) {
  .home-catalog-scroll .home-catalog-card {
    flex: 0 0 min(260px, 82vw);
    width: min(260px, 82vw);
  }
}
.map-embed {
  filter: grayscale(20%) contrast(1.02);
}

/* Контент из CMS (новости, страницы) */
.article-body h2,
.cms-page-body h2 {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: #1a3c2e;
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
}
.article-body h3,
.cms-page-body h3 {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
  color: #1a3c2e;
  margin-top: 1.25rem;
  margin-bottom: 0.5rem;
}
.article-body ul,
.article-body ol,
.cms-page-body ul,
.cms-page-body ol {
  margin: 0.75rem 0;
  padding-left: 1.35rem;
}
.article-body li,
.cms-page-body li {
  margin: 0.25rem 0;
}
.article-body a,
.cms-page-body a {
  color: #2d6a4f;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.article-body img,
.cms-page-body img {
  max-width: 100%;
  height: auto;
  border-radius: 0.5rem;
}
.article-body table,
.cms-page-body table {
  width: 100%;
  border-collapse: collapse;
  margin: 1rem 0;
  font-size: 0.9375rem;
}
.article-body th,
.article-body td,
.cms-page-body th,
.cms-page-body td {
  border: 1px solid rgba(26, 60, 46, 0.15);
  padding: 0.5rem 0.75rem;
}

.catalog-tree details > summary {
  list-style: none;
  cursor: pointer;
}
.catalog-tree details > summary::-webkit-details-marker {
  display: none;
}
.catalog-tree details > summary::before {
  content: 'expand_more';
  font-family: 'Material Symbols Outlined', sans-serif;
  font-weight: normal;
  font-style: normal;
  font-variation-settings: 'FILL' 0, 'wght' 400;
  margin-right: 0.35rem;
  vertical-align: -0.2em;
  display: inline-block;
  transition: transform 0.2s;
  font-size: 1.25rem;
  line-height: 1;
  color: #496455;
}
.catalog-tree details[open] > summary::before {
  transform: rotate(180deg);
}
