.site-container {
  width: min(var(--botcrawl-site-width), calc(100% - 32px));
  margin: 0 auto;
}

.site-container--content {
  width: min(var(--botcrawl-content-width), calc(100% - 32px));
}

.site-header {
  background: var(--botcrawl-header-bg);
  color: var(--botcrawl-header-text);
  min-height: var(--botcrawl-header-height);
}

.site-header__inner {
  min-height: var(--botcrawl-header-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.custom-logo-link,
.custom-logo {
  max-width: var(--botcrawl-logo-max-width);
  height: auto;
}

.site-title {
  color: var(--botcrawl-header-text);
  font-weight: 700;
  font-size: 1.2rem;
}

.main-navigation {
  display: flex;
  align-items: center;
}

.primary-menu {
  display: flex;
  gap: 28px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.primary-menu a {
  color: var(--botcrawl-header-link);
  font-size: 19px;
  font-weight: 700;
}

.primary-menu a:hover,
.primary-menu a:focus {
  color: var(--botcrawl-header-link-hover);
  text-decoration: none;
}

.menu-toggle {
  display: none;
  flex-direction: column;
  gap: 4px;
  padding: 0;
  min-height: auto;
  background: transparent;
  color: var(--botcrawl-mobile-toggle-color);
}

.menu-toggle__line {
  width: var(--botcrawl-mobile-toggle-size);
  height: 2px;
  background: currentColor;
  display: block;
}

.hero-search {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 72px 0 88px;
}

.hero-search__inner {
  text-align: center;
}

.hero-search__title {
  margin: 0 0 16px;
  font-size: clamp(2.3rem, 4vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -0.03em;
}

.hero-search__subtitle {
  max-width: 680px;
  margin: 0 auto 28px;
  color: #526072;
  font-size: 18px;
}

.bot-search-form {
  max-width: 720px;
  margin: 0 auto;
  display: flex;
  gap: 12px;
}

.bot-search-form__input {
  min-height: 60px;
  padding: 0 18px;
  box-shadow: var(--botcrawl-shadow-soft);
}

.bot-search-form__button {
  min-width: 120px;
  min-height: 60px;
}

.hero-search__popular {
  margin-top: 18px;
  color: #526072;
  font-size: 14px;
}

.hero-search__popular a,
.hero-search__popular span {
  color: inherit;
}

.hero-search__popular a { color: var(--botcrawl-link); }
.hero-search__dot { margin: 0 8px; }

.site-main {
  padding-top: var(--botcrawl-container-pad-top);
  padding-bottom: var(--botcrawl-container-pad-bottom);
}

.site-main-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 32px;
}

.site-main-layout.has-sidebar {
  grid-template-columns: minmax(0, 1fr) var(--botcrawl-sidebar-width);
}

.site-main-layout.no-sidebar .site-main-content {
  max-width: var(--botcrawl-content-width);
}

.blog-list-wrap,
.article-wrap,
.standard-page-block {
  min-width: 0;
}

.blog-list-wrap {
  max-width: 900px;
}

.article-wrap,
.standard-page-block {
  max-width: var(--botcrawl-content-width);
}

.site-sidebar {
  min-width: 0;
}

.footer-widgets {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--botcrawl-footer-gap);
}

.site-footer {
  background: var(--botcrawl-footer-bg);
  color: var(--botcrawl-footer-text);
  border-top: 1px solid #E8EEF9;
}

.site-footer a { color: var(--botcrawl-footer-link); }

.site-footer .site-container {
  padding-top: var(--botcrawl-footer-pad-top);
  padding-bottom: var(--botcrawl-footer-pad-bottom);
}

.site-footer__bottom {
  margin-top: 32px;
  padding-top: 20px;
  border-top: 1px solid #E8EEF9;
}
