/*
Theme Name: Урожай
Theme URI: https://urozhayblog.ru/
Description: Дочерняя тема GeneratePress для блога о даче, саде и огороде. Липкий сайдбар вместо шапки, меню-пилюли, серифная колонка чтения. Шрифты Fira Sans и Bitter самохостом.
Author: Редакция «Урожай»
Template: generatepress
Version: 1.0.3
Text Domain: urozhay-adesk
*/

/* ============================================================
   Урожай - ядро дизайн-системы
   Референс: adesk.ru/blog (замеры в refs/adesk/design-system.md)
   Разметка: классы GeneratePress, поэтому этот файл работает
   и в статическом прототипе (_sim/*.html), и в теме WordPress.
   ============================================================ */

/* --- Шрифты (самохост, 0 внешних запросов) --------------- */

@font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;
  src:url('assets/fonts/fira-sans-v18-cyrillic_latin-regular.woff2') format('woff2');}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:500;font-display:swap;
  src:url('assets/fonts/fira-sans-v18-cyrillic_latin-500.woff2') format('woff2');}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:600;font-display:swap;
  src:url('assets/fonts/fira-sans-v18-cyrillic_latin-600.woff2') format('woff2');}
@font-face{font-family:'Bitter';font-style:normal;font-weight:400;font-display:swap;
  src:url('assets/fonts/bitter-v42-cyrillic_latin-regular.woff2') format('woff2');}
@font-face{font-family:'Bitter';font-style:normal;font-weight:700;font-display:swap;
  src:url('assets/fonts/bitter-v42-cyrillic_latin-700.woff2') format('woff2');}

/* --- Токены ---------------------------------------------- */

:root{
  --ui: 'Fira Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --serif: 'Bitter', Georgia, 'Times New Roman', serif;

  --ink: #2a2b26;
  --ink-soft: #4e5148;
  --muted: #878b7d;
  --bg: #ffffff;
  --line: #e4e6dd;
  --pill: #f3f4ec;
  --pill-hover: #e8ebdd;

  --brand: #4a7c2b;
  --brand-dark: #3a6221;
  --brand-soft: #e9f0dc;
  --amber: #e8a33d;
  --amber-soft: #f9efd9;

  --side: 310px;        /* колонка сайдбара целиком */
  --side-inner: 250px;  /* содержимое сайдбара */
  --content: 925px;     /* колонка контента */
  --read: 700px;        /* колонка чтения в статье */
  --gutter: 30px;
  --r-img: 4px;         /* радиус картинок и кнопок */
  --r-pill: 20px;       /* радиус пилюль меню */
}

/* --- База ------------------------------------------------- */

body{
  font-family:var(--ui);
  font-size:16px;
  line-height:1.5;
  color:var(--ink);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
}
a{color:var(--brand);text-decoration:none;}
img{max-width:100%;height:auto;}

::selection{background:var(--brand-soft);color:var(--ink);}

:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:2px;}

/* ============================================================
   1. КАРКАС: липкий сайдбар слева вместо шапки
   ============================================================ */

body{
  display:grid;
  grid-template-columns:var(--side) minmax(0,1fr);
  align-items:start;
  max-width:1265px;
  margin:0 auto;
}

.site-header{
  grid-column:1;
  grid-row:1 / span 20;
  align-self:stretch;
  background:none;
  border:0;
  padding:0;
}
.site-header .inside-header{
  position:sticky;
  top:30px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  width:var(--side-inner);
  margin:30px var(--gutter);
  padding:0;
  max-width:none;
}

#page{grid-column:2;grid-row:1;width:100%;max-width:var(--content);margin:30px var(--gutter) 30px 0;}
.site-footer{grid-column:2;grid-row:2;width:100%;max-width:var(--content);margin:0 var(--gutter) 0 0;}

/* --- Логотип --------------------------------------------- */

.site-branding{display:block;margin-bottom:14px;}
/* знак логотипа: инлайн-SVG фоном, без отдельного запроса и без PHP-хука */
.site-header .main-title a,
.site-header .site-title a{display:inline-flex;align-items:center;gap:11px;}
.site-header .main-title a::before,
.site-header .site-title a::before{
  content:"";
  flex:0 0 auto;
  width:44px;height:44px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Crect width='48' height='48' rx='13' fill='%234A7C2B'/%3E%3Cpath d='M24 38V21' fill='none' stroke='%23ffffff' stroke-width='3.2' stroke-linecap='round'/%3E%3Cpath d='M24 29Q13.2 27 13.8 16.4Q23.4 18 24 29Z' fill='%23ffffff'/%3E%3Cpath d='M24 25.5Q34.8 23.5 34.2 13Q24.6 14.6 24 25.5Z' fill='%23E8A33D'/%3E%3C/svg%3E") no-repeat center/contain;
}
.site-header .main-title,
.site-header .site-title{
  margin:0;
  font-family:var(--ui);
  font-size:29px;
  font-weight:600;
  line-height:1;
  letter-spacing:-.015em;
}
.site-header .main-title a,
.site-header .site-title a{color:var(--ink);}
.site-header .main-title a:hover{color:var(--brand);}

.site-description{
  margin:0 0 30px;
  font-size:16px;
  line-height:24px;
  color:var(--ink-soft);
  max-width:var(--side-inner);
}

/* --- Меню-пилюли ------------------------------------------ */

.main-navigation{background:none;width:100%;}
.main-navigation .inside-navigation{padding:0;max-width:none;}
.main-navigation .main-nav > ul,
.main-navigation .menu{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  list-style:none;
  margin:0;
  padding:0;
}
.main-navigation .menu > li{margin:0;position:relative;}
.main-navigation .menu > li > a{
  display:inline-flex;
  align-items:center;
  padding:12px 20px;
  border-radius:var(--r-pill);
  background:var(--pill);
  color:var(--ink);
  font-size:16px;
  font-weight:400;
  line-height:1;
  transition:background .15s ease,color .15s ease;
}
.main-navigation .menu > li > a:hover{background:var(--pill-hover);color:var(--ink);}
.main-navigation .menu > li.current-menu-item > a,
.main-navigation .menu > li.current-menu-parent > a,
.main-navigation .menu > li.current-category-ancestor > a{
  background:var(--ink);color:#fff;
}
/* Акцентная пилюля: рубрика «Что выбрать» */
.main-navigation .menu > li.hz-accent > a{background:var(--brand-soft);color:var(--brand-dark);}
.main-navigation .menu > li.hz-accent > a:hover{background:#dde8c8;}
.main-navigation .menu > li.hz-accent.current-menu-item > a{background:var(--brand);color:#fff;}

/* подменю в сайдбаре разворачиваем вложенным списком, без выпадашек */
.main-navigation .menu ul.sub-menu{
  display:flex;flex-direction:column;gap:6px;
  list-style:none;margin:10px 0 0 16px;padding:0;position:static;width:auto;box-shadow:none;background:none;
}
.main-navigation .menu ul.sub-menu a{
  padding:6px 0;background:none;font-size:15px;color:var(--ink-soft);border-radius:0;
}
.main-navigation .menu ul.sub-menu a:hover{color:var(--brand);background:none;}
.main-navigation .menu-toggle,
.main-navigation .menu-bar-items{display:none;}

/* Служебные ссылки под меню */
.hz-side-foot{margin-top:26px;font-size:14px;line-height:22px;color:var(--muted);}
.hz-side-foot a{color:var(--muted);}
.hz-side-foot a:hover{color:var(--brand);}

/* ============================================================
   2. ЛЕНТА (главная, рубрика, поиск)
   ============================================================ */

.site-main > article{margin:0 0 40px;padding:0;border:0;background:none;}
.site-main > article .inside-article{padding:0;}

/* карточка: обложка слева 245, текст справа 650 */
body.blog .site-main > article .inside-article,
body.archive .site-main > article .inside-article,
body.search .site-main > article .inside-article{
  display:grid;
  grid-template-columns:245px minmax(0,1fr);
  column-gap:var(--gutter);
}
body.blog .site-main > article .inside-article > *,
body.archive .site-main > article .inside-article > *,
body.search .site-main > article .inside-article > *{grid-column:2;}
body.blog .site-main > article .post-image,
body.archive .site-main > article .post-image,
body.search .site-main > article .post-image{
  grid-column:1;grid-row:1 / span 12;align-self:start;margin:0;
}
body.blog .site-main > article .post-image img,
body.archive .site-main > article .post-image img,
body.search .site-main > article .post-image img{
  display:block;width:245px;height:180px;object-fit:cover;border-radius:var(--r-img);
}

/* запись без обложки не должна оставлять пустую колонку слева */
body.blog .site-main > article .inside-article:not(:has(.post-image)),
body.archive .site-main > article .inside-article:not(:has(.post-image)),
body.search .site-main > article .inside-article:not(:has(.post-image)){display:block;}

body.blog .site-main > article .entry-title,
body.archive .site-main > article .entry-title,
body.search .site-main > article .entry-title{
  margin:0 0 12px;font-size:30px;line-height:36px;font-weight:500;letter-spacing:-.01em;
}
body.blog .site-main > article .entry-title a,
body.archive .site-main > article .entry-title a,
body.search .site-main > article .entry-title a{color:var(--ink);}
body.blog .site-main > article .entry-title a:hover,
body.archive .site-main > article .entry-title a:hover,
body.search .site-main > article .entry-title a:hover{color:var(--brand);}

.site-main > article .entry-summary p,
.site-main > article .entry-content p{
  margin:12px 0;font-family:var(--ui);font-size:18px;line-height:27px;color:var(--ink-soft);
}
.site-main > article .entry-summary p:last-child,
.site-main > article .entry-content p:last-child{margin-bottom:0;}

/* мета ленты */
.site-main > article .entry-meta,
.site-main > article footer.entry-meta{
  margin:12px 0 0;font-size:16px;line-height:1;color:var(--muted);
}
.site-main > article .entry-meta a{color:var(--muted);}
.site-main > article .entry-meta a:hover{color:var(--brand);}
.site-main > article .entry-meta > span{margin-right:16px;}
.site-main > article .entry-meta .cat-links a{color:var(--brand);}

/* --- Главный (первый) пост ленты -------------------------- */

body.blog .site-main > article:first-of-type{margin-bottom:80px;}
body.blog .site-main > article:first-of-type .inside-article{display:block;}
body.blog .site-main > article:first-of-type .post-image{margin:0 0 16px;}
body.blog .site-main > article:first-of-type .post-image img{
  width:100%;height:520px;object-fit:cover;border-radius:var(--r-img);
}
body.blog .site-main > article:first-of-type .entry-title{
  margin:16px 0 12px;font-size:45px;line-height:49.5px;font-weight:600;letter-spacing:-.02em;
}
body.blog .site-main > article:first-of-type .entry-summary p{
  margin:12px 0 16px;font-size:20px;line-height:30px;color:var(--ink-soft);
}

/* --- Заголовок архива / поиска ---------------------------- */

.page-header{
  margin:0 0 40px;padding:0;background:none;border:0;
}
.page-header h1,.page-header .page-title{
  margin:0 0 12px;font-size:45px;line-height:1.1;font-weight:600;letter-spacing:-.02em;color:var(--ink);
}
.page-header .taxonomy-description,
.page-header .archive-description p{
  margin:0;max-width:var(--read);font-size:20px;line-height:30px;color:var(--ink-soft);
}

/* --- Пагинация / «показать ещё» --------------------------- */

.paging-navigation,.nav-links{margin:0 0 60px;display:flex;gap:10px;flex-wrap:wrap;justify-content:center;}
.paging-navigation a,.paging-navigation .current,
.nav-links a,.nav-links .current{
  display:inline-block;padding:12px 20px;border:1px solid var(--line);border-radius:var(--r-img);
  background:#fff;color:var(--ink);font-size:16px;line-height:24px;font-weight:500;
}
.paging-navigation a:hover,.nav-links a:hover{border-color:var(--ink);color:var(--ink);}
.paging-navigation .current,.nav-links .current{background:var(--ink);border-color:var(--ink);color:#fff;}

/* ============================================================
   3. СТАТЬЯ
   ============================================================ */

body.single .site-main > article,
body.page .site-main > article{margin-bottom:0;}

body.single .entry-header,
body.page .entry-header{margin:0 0 24px;}
body.single .entry-title,
body.page .entry-title{
  margin:0 0 24px;font-size:60px;line-height:66px;font-weight:600;letter-spacing:-.025em;color:var(--ink);
}
body.single .entry-header .entry-meta,
body.page .entry-header .entry-meta{
  margin:0 0 24px;font-size:16px;line-height:1;color:var(--muted);
}
body.single .entry-header .entry-meta > span{margin-right:16px;}

/* лид: первый абзац после заголовка */
body.single .entry-content > p:first-of-type{
  font-family:var(--ui);font-size:24px;line-height:36px;color:var(--ink);margin:0 0 32px;max-width:var(--read);
}

/* обложка во всю ширину контента */
body.single .post-image,
body.single .featured-image{margin:0 0 40px;}
body.single .post-image img,
body.single .featured-image img{
  display:block;width:100%;height:520px;object-fit:cover;border-radius:var(--r-img);
}

/* тело статьи: серифная колонка 700 */
body.single .entry-content,
body.page .entry-content{font-family:var(--serif);font-size:20px;line-height:30px;color:var(--ink);}
body.single .entry-content > *,
body.page .entry-content > *{max-width:var(--read);}
body.single .entry-content p,
body.page .entry-content p{margin:0 0 24px;}
body.single .entry-content strong{font-weight:700;}

body.single .entry-content h2,
body.page .entry-content h2{
  font-family:var(--ui);font-size:32px;line-height:35.2px;font-weight:600;letter-spacing:-.02em;
  margin:64px 0 24px;color:var(--ink);
}
body.single .entry-content h3,
body.page .entry-content h3{
  font-family:var(--ui);font-size:24px;line-height:31px;font-weight:500;margin:40px 0 16px;color:var(--ink);
}
body.single .entry-content h4{font-family:var(--ui);font-size:20px;font-weight:600;margin:32px 0 12px;}

body.single .entry-content a,
body.page .entry-content a{
  color:var(--brand);
  text-decoration:underline;
  text-decoration-color:rgba(74,124,43,.4);
  text-underline-offset:3px;
  text-decoration-thickness:1px;
}
body.single .entry-content a:hover{text-decoration-color:var(--brand);}

/* списки */
body.single .entry-content ul,
body.single .entry-content ol,
body.page .entry-content ul,
body.page .entry-content ol{margin:0 0 24px;padding:0;list-style:none;}
body.single .entry-content li,
body.page .entry-content li{position:relative;margin:0 0 12px;padding-left:28px;}
body.single .entry-content ul > li::before{
  content:"";position:absolute;left:6px;top:12px;width:7px;height:7px;border-radius:50%;background:var(--brand);
}
body.single .entry-content ol{counter-reset:hz;}
body.single .entry-content ol > li{counter-increment:hz;}
body.single .entry-content ol > li::before{
  content:counter(hz);position:absolute;left:0;top:2px;
  font-family:var(--ui);font-size:15px;font-weight:600;color:var(--brand);
  width:20px;text-align:center;
}

/* врезка «Коротко» */
body.single .entry-content blockquote,
body.page .entry-content blockquote{
  margin:32px 0;padding:22px 26px;border:0;border-left:3px solid var(--brand);
  background:var(--brand-soft);border-radius:0 var(--r-img) var(--r-img) 0;
  font-family:var(--ui);font-size:18px;line-height:28px;color:var(--ink);
}
body.single .entry-content blockquote p:last-child{margin-bottom:0;}

/* таблицы: во всю ширину контента, шире колонки чтения */
body.single .entry-content table,
body.page .entry-content table{
  max-width:none;width:100%;border-collapse:collapse;margin:32px 0;
  font-family:var(--ui);font-size:16px;line-height:24px;
}
body.single .entry-content thead th{
  text-align:left;padding:12px 16px;background:var(--ink);color:#fff;font-weight:500;border:0;
}
body.single .entry-content thead th:first-child{border-radius:var(--r-img) 0 0 0;}
body.single .entry-content thead th:last-child{border-radius:0 var(--r-img) 0 0;}
body.single .entry-content tbody td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:top;}
body.single .entry-content tbody tr:nth-child(even){background:#fafbf4;}

/* картинки в теле */
body.single .entry-content img{border-radius:var(--r-img);}
body.single .entry-content figure{max-width:none;margin:32px 0;}
body.single .entry-content figcaption{
  margin-top:10px;font-family:var(--ui);font-size:14px;line-height:20px;color:var(--muted);
}

/* «Ещё по теме» */
.hz-related{margin:64px 0 0;padding-top:40px;border-top:1px solid var(--line);}
.hz-related__title{font-family:var(--ui);font-size:30px;line-height:36px;font-weight:500;margin:0 0 32px;}
.hz-related__list{list-style:none;margin:0;padding:0;display:grid;gap:24px;}
.hz-related__item a{
  font-family:var(--ui);font-size:22px;line-height:29px;font-weight:500;color:var(--ink);display:block;
}
.hz-related__item a:hover{color:var(--brand);}
.hz-related__meta{margin-top:6px;font-family:var(--ui);font-size:15px;color:var(--muted);}

/* автор под статьёй */
.hz-author{
  margin:56px 0 0;padding:24px 26px;background:var(--pill);border-radius:8px;
  font-family:var(--ui);font-size:16px;line-height:24px;color:var(--ink-soft);
}
.hz-author strong{color:var(--ink);}

/* хлебные крошки */
.hz-breadcrumb,.rank-math-breadcrumb{
  margin:0 0 20px;font-family:var(--ui);font-size:15px;line-height:1.4;color:var(--muted);
}
.hz-breadcrumb a,.rank-math-breadcrumb a{color:var(--muted);}
.hz-breadcrumb a:hover,.rank-math-breadcrumb a:hover{color:var(--brand);}

/* ============================================================
   4. СЕКЦИЯ «ЧИТАЮТ ЧАЩЕ» и пустые состояния
   ============================================================ */

.hz-top{margin:0 0 60px;padding-top:56px;border-top:1px solid var(--line);}
.hz-top__title{font-size:30px;line-height:36px;font-weight:500;margin:0 0 32px;}
.hz-top__list{list-style:none;margin:0;padding:0;}
.hz-top__item{padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid var(--line);}
.hz-top__item:last-child{border-bottom:0;padding-bottom:0;margin-bottom:0;}
.hz-top__item a{font-size:22px;line-height:29px;font-weight:500;color:var(--ink);}
.hz-top__item a:hover{color:var(--brand);}
.hz-top__meta{margin-top:6px;font-size:15px;color:var(--muted);}

.hz-empty{
  background:var(--ink);color:#fff;border-radius:8px;padding:56px 48px;margin:0 0 40px;
}
.hz-empty h1,.hz-empty h2{font-size:36px;line-height:1.15;font-weight:600;margin:0 0 12px;color:#fff;}
.hz-empty p{font-size:18px;line-height:27px;color:#c9ccbe;margin:0 0 28px;max-width:520px;}
.hz-empty .hz-chips{display:flex;flex-wrap:wrap;gap:10px;}
.hz-empty .hz-chips a{
  padding:10px 18px;border-radius:var(--r-pill);background:rgba(255,255,255,.1);color:#fff;font-size:15px;
}
.hz-empty .hz-chips a:hover{background:var(--brand);}

/* поиск */
.search-form,.wp-block-search__inside-wrapper{display:flex;gap:10px;max-width:520px;}
.search-form input[type="search"],
.search-field{
  flex:1 1 auto;min-width:0;padding:12px 18px;border:1px solid var(--line);border-radius:var(--r-pill);
  font-family:var(--ui);font-size:16px;color:var(--ink);background:#fff;
}
.search-form input[type="search"]:focus{border-color:var(--brand);outline:none;}
.search-form button,.search-submit{
  padding:12px 22px;border:0;border-radius:var(--r-pill);background:var(--brand);color:#fff;
  font-family:var(--ui);font-size:16px;cursor:pointer;
}
.search-form button:hover,.search-submit:hover{background:var(--brand-dark);}

/* ============================================================
   5. ПОДВАЛ
   ============================================================ */

.site-footer{
  border-top:1px solid var(--line);
  padding:32px 0 48px;
  font-size:14px;line-height:16.8px;color:var(--muted);
}
.site-footer .inside-site-info,
.site-footer .footer-widgets{padding:0;max-width:none;}
.hz-foot{display:flex;flex-wrap:wrap;gap:16px 30px;align-items:center;}
.hz-foot a{color:var(--muted);}
.hz-foot a:hover{color:var(--brand);}
.hz-foot__copy{margin-right:auto;}
.site-footer .copyright-bar{padding:0;}

/* ============================================================
   6. АДАПТИВ
   ============================================================ */

@media (max-width:1265px){
  body{max-width:none;}
  #page,.site-footer{max-width:none;}
}

@media (max-width:1200px){
  :root{--side:270px;--side-inner:220px;--gutter:24px;}
  body.blog .site-main > article:first-of-type .entry-title{font-size:38px;line-height:43px;}
  body.single .entry-title{font-size:46px;line-height:52px;}
  body.single .entry-content h2{font-size:28px;line-height:32px;margin-top:52px;}
}

/* сайдбар превращается в верхнюю панель */
@media (max-width:1023px){
  body{display:block;max-width:100%;}
  .site-header{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line);}
  .site-header .inside-header{
    position:static;flex-direction:row;align-items:center;flex-wrap:wrap;gap:0 20px;
    width:auto;margin:0;padding:14px 24px;
  }
  .site-branding{margin:0;}
  .site-description{display:none;}
  /* min-width:0 обязателен: без него флекс-элемент растягивается по содержимому
     ленты пилюль и вся страница уезжает в горизонтальную прокрутку */
  .main-navigation{width:100%;min-width:0;margin-top:12px;}
  .main-navigation .inside-navigation,
  .main-navigation .main-nav{min-width:0;width:100%;}
  /* пилюли в горизонтальную ленту с прокруткой */
  .main-navigation .main-nav > ul,
  .main-navigation .menu{
    display:flex !important;flex-direction:row;flex-wrap:nowrap;gap:8px;
    overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
    margin:0;padding:0 0 2px;
  }
  .main-navigation .menu::-webkit-scrollbar{display:none;}
  .main-navigation .menu > li{flex:0 0 auto;}
  .main-navigation .menu > li > a{padding:9px 16px;font-size:15px;white-space:nowrap;}
  .main-navigation .menu ul.sub-menu{display:none;}
  .hz-side-foot{display:none;}

  /* width:auto обязателен: width:100% вместе с боковыми margin даёт
     ширину «100% + поля» и всю страницу уводит в горизонтальную прокрутку */
  #page{width:auto;margin:24px;max-width:none;}
  .site-footer{width:auto;margin:0 24px;max-width:none;}

  body.single .entry-content > *,
  body.single .entry-content > p:first-of-type{max-width:none;}
  .page-header .taxonomy-description{max-width:none;}
}

@media (max-width:768px){
  body.blog .site-main > article:first-of-type .post-image img{height:230px;}
  body.blog .site-main > article:first-of-type .entry-title{font-size:30px;line-height:36px;}
  body.blog .site-main > article:first-of-type .entry-summary p{font-size:18px;line-height:27px;}
  body.blog .site-main > article:first-of-type{margin-bottom:48px;}

  /* карточка складывается: обложка сверху */
  body.blog .site-main > article .inside-article,
  body.archive .site-main > article .inside-article,
  body.search .site-main > article .inside-article{display:block;}
  body.blog .site-main > article .post-image img,
  body.archive .site-main > article .post-image img,
  body.search .site-main > article .post-image img{width:100%;height:200px;margin-bottom:14px;}
  body.blog .site-main > article .entry-title,
  body.archive .site-main > article .entry-title,
  body.search .site-main > article .entry-title{font-size:23px;line-height:29px;}
  .site-main > article .entry-summary p{font-size:16px;line-height:25px;}
  .site-main > article{margin-bottom:36px;}

  .page-header h1,.page-header .page-title{font-size:30px;}
  .page-header .taxonomy-description{font-size:17px;line-height:26px;}

  body.single .entry-title{font-size:31px;line-height:37px;}
  body.single .entry-header .entry-meta{margin-bottom:20px;}
  body.single .entry-content > p:first-of-type{font-size:19px;line-height:29px;margin-bottom:26px;}
  body.single .post-image img{height:210px;}
  body.single .entry-content,body.page .entry-content{font-size:18px;line-height:29px;}
  body.single .entry-content h2{font-size:25px;line-height:29px;margin:44px 0 18px;}
  body.single .entry-content h3{font-size:20px;line-height:27px;margin:30px 0 12px;}
  body.single .entry-content table{font-size:15px;}
  body.single .entry-content thead th,
  body.single .entry-content tbody td{padding:10px 12px;}
  .hz-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:32px 0;}
  .hz-table-scroll table{margin:0;min-width:520px;}

  .hz-empty{padding:36px 24px;}
  .hz-empty h1,.hz-empty h2{font-size:27px;}
  .hz-related__title,.hz-top__title{font-size:24px;line-height:30px;}
  .hz-related__item a,.hz-top__item a{font-size:19px;line-height:26px;}
  #page{margin:20px 16px;}
  .site-footer{margin:0 16px;}
  .site-header .inside-header{padding:12px 16px;}
}

@media (max-width:480px){
  .site-header .main-title,.site-header .site-title{font-size:24px;}
  .site-header .main-title a::before{width:38px;height:38px;}
  body.single .entry-title{font-size:27px;line-height:33px;}
  .search-form{flex-direction:column;}
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;transition-duration:.001ms !important;}
}


/* ============================================================
   Мост к GeneratePress: гасим дефолты родителя и его инлайн-стили.
   Правила специально написаны его же селекторами - иначе GP
   перебивает тему динамическим CSS (специфичность 0,2,3).
   ============================================================ */

/* --- Контейнеры ------------------------------------------- */

.grid-container{max-width:none;padding:0;margin:0;}
.site-content{display:block;padding:0;}
.content-area,#primary{width:100%;max-width:none;float:none;padding:0;}
.separate-containers .site-main{margin:0;}
.separate-containers .inside-article,
.one-container .inside-article{padding:0;background:none;}
.separate-containers .paging-navigation,
.separate-containers .page-header,
.separate-containers .inside-article{box-shadow:none;}
.separate-containers .page-header{background:none;padding:0;}
.no-sidebar .inside-article{padding:0;}
.site-content .content-area{margin:0;}

/* GP рисует боковую виджет-зону - в этом макете её нет */
.sidebar,.widget-area,#right-sidebar,#left-sidebar{display:none;}

/* --- Шапка ------------------------------------------------ */

.site-header{background:none;padding:0;}
.site-header .inside-header{padding:0;}
.site-header .header-image,.site-logo{display:none;}

/* заголовок сайта: GP красит его своим динамическим CSS */
.site-header .main-title,
.site-header .main-title a,
.site-header .main-title a:visited{color:var(--ink) !important;font-family:var(--ui);}
.site-header .main-title a:hover{color:var(--brand) !important;}
.site-header .site-description{color:var(--ink-soft) !important;}

/* --- Навигация: пилюли поверх инлайн-стилей GP ------------- */

.main-navigation,
.main-navigation ul,
.main-navigation .inside-navigation{background-color:transparent !important;}

.site-header .main-navigation .main-nav > ul > li > a,
.site-header .main-navigation .main-nav > ul > li > a:visited{
  padding:12px 20px !important;
  line-height:1 !important;
  height:auto !important;
  border-radius:var(--r-pill);
  background-color:var(--pill) !important;
  color:var(--ink) !important;
  font-size:16px;
  font-weight:400;
}
.site-header .main-navigation .main-nav > ul > li > a:hover,
.site-header .main-navigation .main-nav > ul > li:hover > a,
.site-header .main-navigation .main-nav > ul > li.sfHover > a{
  background-color:var(--pill-hover) !important;color:var(--ink) !important;
}
.site-header .main-navigation .main-nav > ul > li.current-menu-item > a,
.site-header .main-navigation .main-nav > ul > li.current-menu-parent > a,
.site-header .main-navigation .main-nav > ul > li.current-menu-ancestor > a,
.site-header .main-navigation .main-nav > ul > li.current-category-ancestor > a{
  background-color:var(--ink) !important;color:#fff !important;
}
.site-header .main-navigation .main-nav > ul > li.hz-accent > a{
  background-color:var(--brand-soft) !important;color:var(--brand-dark) !important;
}
.site-header .main-navigation .main-nav > ul > li.hz-accent > a:hover,
.site-header .main-navigation .main-nav > ul > li.hz-accent:hover > a{
  background-color:#dde8c8 !important;color:var(--brand-dark) !important;
}
.site-header .main-navigation .main-nav > ul > li.hz-accent.current-menu-item > a{
  background-color:var(--brand) !important;color:#fff !important;
}

/* GP уводит подменю за экран абсолютом - разворачиваем в столбик */
.main-navigation ul ul,
.main-navigation .main-nav ul ul{
  position:static !important;left:auto !important;top:auto !important;
  width:auto !important;box-shadow:none !important;background:none !important;
  opacity:1 !important;visibility:visible !important;pointer-events:auto !important;
  float:none;
}
.site-header .main-navigation .main-nav ul ul li a{
  padding:6px 0 !important;background:none !important;color:var(--ink-soft) !important;
  font-size:15px;line-height:1.4 !important;border-radius:0;
}
.site-header .main-navigation .main-nav ul ul li a:hover{color:var(--brand) !important;}
.main-navigation .dropdown-menu-toggle,
.main-navigation .menu-item-has-children > a .dropdown-menu-toggle{display:none !important;}

/* мобильный тоггл GP не используем: пилюли просто прокручиваются */
.main-navigation .menu-toggle,
.menu-toggle,
.main-navigation .mobile-bar-items{display:none !important;}

/* --- Записи ----------------------------------------------- */

.entry-header{margin-bottom:0;}
.posted-on .updated{display:none;}
.entry-content:not(:first-child),.entry-summary:not(:first-child){margin-top:0;}
.post-image,.page-header-image{margin:0;}
.read-more,.more-link{display:none;}

/* мета: дата + время чтения, автора и комментарии не показываем */
.entry-meta .byline,
.entry-meta .comments-link,
.entry-meta .author{display:none;}
.hz-readtime{margin-left:16px;}

/* --- Подвал ----------------------------------------------- */

.site-footer .footer-widgets,
.site-footer .footer-widgets-container{background:none;padding:0;}
.site-info{padding:0;background:none;text-align:left;}
.site-info .inside-site-info{padding:0;}
.copyright-bar{padding:0 !important;}

/* --- Прочее ----------------------------------------------- */

.screen-reader-text{
  position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);
  white-space:nowrap;border:0;padding:0;margin:-1px;
}
.skip-link{
  position:absolute;left:-9999px;top:0;z-index:100;
}
.skip-link:focus{
  left:16px;top:16px;width:auto;height:auto;clip:auto;clip-path:none;
  background:var(--ink);color:#fff;padding:12px 18px;border-radius:var(--r-img);font-size:15px;
}
.generate-back-to-top{
  background:var(--ink) !important;color:#fff !important;border-radius:50% !important;
}
