.rb-blog{
  --rb-accent:#ff642e;
  --rb-text:#161616;
  --rb-muted:#7a7a7a;
  --rb-line:#ededed;
  --rb-card:#f3f3f3;
  --rb-white:#ffffff;

  padding: 100px 0 70px;
}

.rb-blog__container{
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 22px;
  display: grid;
  grid-template-columns: 340px 1fr;
  gap: 44px;
  align-items: start;
}

.rb-main{ min-width: 0; }
.rb-sidebar{ position: sticky; top: 22px; }

.rb-widget{
  border-radius: 14px;
  overflow: hidden;
  background: var(--rb-card);
  box-shadow: 0 0 0 1px rgba(0,0,0,.04);
}
.rb-widget + .rb-widget{ margin-top: 26px; }

.rb-widget__header{
  background: var(--rb-accent);
  color: #fff;
  padding: 16px 18px;
  display:flex;
  align-items:center;
  gap: 12px;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .6px;
}
.rb-widget__title{ text-transform: uppercase; }

.rb-widget__body{ padding: 18px; }
.rb-widget__body--white{ background: var(--rb-white); }

.rb-ico{ color:#b8b8b8; display:inline-flex; align-items:center; }
.rb-ico--white{ color:#fff; }

.rb-widget__heading{
  margin: 0;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .4px;
  text-transform: uppercase;
  color: var(--rb-text);
}
.rb-divider{
  height: 1px;
  background: var(--rb-line);
  margin: 14px 0 16px;
}

/* Categories */
.rb-cat-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap: 16px; }
.rb-cat-item{
  display:flex;
  align-items:center;
  gap: 12px;
}
.rb-dot{
  width: 7px;
  height: 7px;
  border-radius: 999px;
  border: 1.5px solid #cfcfcf;
  flex: 0 0 auto;
}
.rb-cat-link{
  color: #2c2c2c;
  text-decoration: none;
  font-weight: 650;
  font-size: 13px;
  line-height: 1.2;
  flex: 1 1 auto;
}
.rb-cat-link:hover{ color: var(--rb-accent); }
.rb-cat-plus{
  width: 18px;
  height: 18px;
  border-radius: 3px;
  background: #d7e6f1;
  color: #fff;
  display: inline-flex;
  align-items:center;
  justify-content:center;
  font-weight: 900;
  font-size: 13px;
  line-height: 1;
  flex: 0 0 auto;
}

/* Search */
.rb-widget--search .rb-widget__body{ background: var(--rb-card); }
.rb-search{
  position: relative;
  height: 46px;
  border-radius: 999px;
  background: #fff;
  border: 1.5px solid var(--rb-accent);
  display:flex;
  align-items:center;
  padding: 0 46px 0 16px;
}
.rb-search__input{
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 12px;
  letter-spacing: .2px;
}
.rb-search__input::placeholder{ color:#9d9d9d; }
.rb-search__btn{
  position:absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 0;
  cursor: pointer;
  background: var(--rb-accent);
  color: #fff;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Recent */
.rb-recent{ display:flex; flex-direction:column; gap: 18px; }
.rb-recent__item{ display:flex; gap: 14px; align-items:flex-start; }
.rb-recent__thumb{ width: 72px; height: 54px; flex: 0 0 auto; border-radius: 8px; overflow:hidden; display:block; }
.rb-recent__img{ width:100%; height:100%; object-fit: cover; display:block; }
.rb-recent__ph{ width:100%; height:100%; display:block; background:#e7e7e7; }
.rb-recent__date{ display:flex; align-items:center; gap: 8px; color:#9a9a9a; font-size: 11px; margin-bottom: 5px; }
.rb-recent__title{
  display:block;
  color: var(--rb-text);
  text-decoration:none;
  font-weight: 700;
  font-size: 12px;
  line-height: 1.35;
}
.rb-recent__title:hover{ color: var(--rb-accent); }

/* Tags */
.rb-tags{ display:flex; flex-wrap:wrap; gap: 10px; }
.rb-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 8px 12px;
  background: #ededed;
  border-radius: 4px;
  font-size: 12px;
  color: #4a4a4a;
  text-decoration: none;
}
.rb-tag:hover{ background:#e2e2e2; color: var(--rb-text); }

/* Banner */
.rb-banner{ display:block; border-radius: 10px; overflow:hidden; }
.rb-banner__img{ width:100%; height:auto; display:block; border-radius: 10px; }

/* Cards (blog list) */
.rb-card{ margin: 0 0 46px; }
/* Cards (blog list) */
.rb-card__thumb{
  display:block;
  border-radius: 18px;
  overflow:hidden;
}

/* картинка в карточке блога — по высоте меньше */
.rb-card__img{
  width: 100%;
  height: 400px;              /* было auto */
  object-fit: cover;          /* аккуратное кадрирование */
  display: block;
  border-radius: 18px;
  box-shadow: 0 16px 34px rgba(0,0,0,.08);
}

/* заглушка под такую же высоту */
.rb-card__ph{
  display:block;
  width:100%;
  height: 400px;
  background:#e7e7e7;
  border-radius: 18px;
}

/* на более узких экранах делаем ещё ниже */
@media (max-width: 1060px){
  .rb-card__img,
  .rb-card__ph{
    height: 260px;
  }
}


.rb-card__title{
  margin: 22px 0 10px;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: .3px;
  text-transform: uppercase;
}
.rb-card__title a{ color: var(--rb-text); text-decoration:none; }
.rb-card__title a:hover{ color: var(--rb-accent); }

.rb-meta{
  list-style:none;
  padding:0;
  margin: 0;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap: 12px;
  color:#a0a0a0;
  font-size: 11px;
  text-transform: uppercase;
}
.rb-meta li{ display:flex; align-items:center; gap: 8px; }
.rb-meta li + li::before{
  content:"";
  width:1px;
  height: 12px;
  background: #e4e4e4;
  margin-right: 12px;
}
.rb-meta__text{ letter-spacing: .2px; }

.rb-line{
  height: 1px;
  background: var(--rb-line);
  margin: 14px 0 14px;
}

.rb-card__excerpt{
  margin: 0 0 18px;
  color: #6f6f6f;
  font-size: 13px;
  line-height: 1.85;
  max-width: 900px;
}

.rb-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 12px 22px;
  border-radius: 999px;
  background: #e9e9e9;
  color: #232323;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  text-decoration:none;
}
.rb-btn:hover{ background:#dedede; }

/* Single post */
.rb-post__hero{
  border-radius: 18px;
  overflow: hidden;
}

/* hero-картинка внутри поста */
.rb-post__hero-img{
  width: 100%;
  height: 440px;          /* было auto — можно 420–460 по вкусу */
  object-fit: cover;      /* аккуратное кадрирование */
  display: block;
  border-radius: 18px;
  box-shadow: 0 18px 38px rgba(0,0,0,.09);
}

/* на мобильных делаем ниже */
@media (max-width: 767.98px){
  .rb-post__hero-img{
    height: 260px;
  }
}


.rb-post__title{
  margin: 22px 0 8px;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: .3px;
  color: var(--rb-text);
}

/* Typography inside content */
.rb-post__content{
  margin-top: 10px;
  color: #6b6b6b;
  font-size: 13px;
  line-height: 1.95;
}
.rb-post__content > p:first-of-type{
  font-weight: 800;
  color: #2a2a2a;
  font-size: 15px;
  line-height: 1.85;
}
.rb-post__content h2, .rb-post__content h3{
  margin: 26px 0 12px;
  color: var(--rb-text);
}
.rb-post__content ul{ margin: 10px 0 22px 18px; }
.rb-post__content li{ margin: 6px 0; }

/* Blockquote like screenshot */
.rb-post__content blockquote{
  position: relative;
  margin: 22px 0 26px;
  padding: 10px 0 10px 28px;
  border-left: 4px solid var(--rb-accent);
  color: #2a2a2a;
  font-size: 18px;
  line-height: 1.65;
}
.rb-post__content blockquote::before{
  content: "“";
  position: absolute;
  left: 18px;
  top: -6px;
  font-size: 58px;
  line-height: 1;
  color: #d7d7d7;
}
.rb-post__content blockquote cite{
  display:block;
  margin-top: 10px;
  font-size: 12px;
  font-style: normal;
  color: var(--rb-accent);
  font-weight: 800;
}

/* Images */
.rb-post__content img{
  max-width: 100%;
  height: auto;
  border-radius: 14px;
}

/* Two-column images (Gutenberg columns) */
.rb-post__content .wp-block-columns{
  display: grid;                           /* вместо flex от WP */
  grid-template-columns: repeat(2,1fr);    /* две равные колонки */
  gap: 28px;
  align-items: stretch;
}

.rb-post__content .wp-block-columns .wp-block-column{
  margin: 0;                               /* убираем лишние отступы колонок */
}

.rb-post__content .wp-block-columns .wp-block-image{
  margin: 0;                               /* картинка без доп. внешних отступов */
}

.rb-post__content .wp-block-columns .wp-block-image img{
  width: 100%;
  height: 320px;
  object-fit: cover;
  display: block;
  border-radius: 14px;
}

/* На совсем узких экранах складываем в столбик */
@media (max-width: 767.98px){
  .rb-post__content .wp-block-columns{
    grid-template-columns: 1fr;
  }

  .rb-post__content .wp-block-columns .wp-block-image img{
    height: 220px;
  }
}

/* Meta bar (bottom) */
.rb-post__meta-bar{
  margin-top: 26px;
  padding: 14px 0;
  border-top: 1px solid var(--rb-line);
  border-bottom: 1px solid var(--rb-line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
}
.rb-meta--light{ color:#b0b0b0; }
.rb-meta--light li + li::before{ background:#ededed; }

.rb-actions{ display:flex; align-items:center; gap: 18px; }
.rb-action{
  border:0;
  background: transparent;
  cursor: pointer;
  display:inline-flex;
  align-items:center;
  gap: 8px;
  text-transform: uppercase;
  font-weight: 900;
  font-size: 11px;
  letter-spacing: .2px;
  color:#2a2a2a;
}
.rb-action:hover{ color: var(--rb-accent); }
.rb-action .rb-ico{ color: currentColor; }

/* Похожие статьи — общий блок */
.rb-blog .rb-related{
  margin: 48px 0 80px !important;
  padding-top: 18px !important;
  border-top: 1px solid var(--rb-line, #e5e7eb) !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

.rb-blog .rb-related__title{
  margin: 0 0 18px !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  letter-spacing: .3px !important;
  text-transform: uppercase !important;
  color: var(--rb-text, #111827) !important;
}

/* 2 карточки в ряд на десктопе */
.rb-blog .rb-related__grid{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: start !important;
}

/* Если похожая статья одна — центрируем */
.rb-blog .rb-related__grid .rb-related__card:only-child{
  grid-column: 1 / -1 !important;
  max-width: 640px !important;
  justify-self: center !important;
}

.rb-blog .rb-related__card{
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
}

/* Картинка */
.rb-blog .rb-related__thumb{
  display: block !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  width: 100% !important;
}

.rb-blog .rb-related__img{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
}

/* Плейсхолдер, если нет миниатюры */
.rb-blog .rb-related__ph{
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  background: #e7e7e7 !important;
}

/* Заголовок карточки — это сам <a> */
.rb-blog .rb-related__name{
  margin: 12px 0 0 !important;
  display: block !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  color: var(--rb-text, #111827) !important;
  text-decoration: none !important;
}

.rb-blog .rb-related__name:hover{
  color: var(--rb-accent, #ff642e) !important;
}

/* Краткий текст */
.rb-blog .rb-related__excerpt{
  margin: 8px 0 0 !important;
  color: #777 !important;
  font-size: 13px !important;
  line-height: 1.85 !important;
}

/* Планшет/мобилка — одна колонка */
@media (max-width: 1060px){
  .rb-blog .rb-related__grid{
    grid-template-columns: 1fr !important;
  }

  .rb-blog .rb-related__grid .rb-related__card:only-child{
    max-width: 100% !important;
    justify-self: stretch !important;
  }
}

@media (max-width: 767.98px){
  .rb-blog .rb-related__img,
  .rb-blog .rb-related__ph{
    height: 200px !important;
  }
}

/* Pagination */
.rb-pagination{
  display:flex;
  flex-wrap:wrap;
  gap: 10px;
  margin-top: 10px;
}
.rb-pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width: 38px;
  height: 38px;
  border-radius: 10px;
  background: #efefef;
  color: #262626;
  text-decoration:none;
  font-weight: 800;
  font-size: 12px;
}
.rb-pagination .current{ background: var(--rb-accent); color:#fff; }
.rb-pagination .page-numbers:hover{ background:#e2e2e2; }

/* Back to top */
.rb-to-top{
  position: fixed;
  right: 24px;
  bottom: 24px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 0;
  background: var(--rb-accent);
  color: #fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor: pointer;
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
  opacity: 0;
  pointer-events: none;
  transform: translateY(6px);
  transition: .2s ease;
}
.rb-to-top.is-visible{
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

/* Responsive */
@media (max-width: 1060px){
  .rb-blog__container{ grid-template-columns: 1fr; }
  .rb-sidebar{ position: static; }
  .rb-related__grid{ grid-template-columns: 1fr; }
  .rb-post__content .wp-block-columns .wp-block-image img{ height: 240px; }
}
/* Archive (category / tag / date) */
.rb-archive-header{
  margin-bottom: 24px;
}

.rb-archive-title{
  margin: 0 0 6px;
  font-size: 20px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .3px;
  color: var(--rb-text);
}

.rb-archive-desc{
  max-width: 760px;
  font-size: 13px;
  line-height: 1.7;
  color: #777;
}