/* ==========================================================================
   Блог — архів / категорії
   ========================================================================== */

.blog-hero{ position:relative; background:#020A03; padding:100px 0 60px; overflow:hidden; margin-top:-98px; padding-top:198px; }
.blog-hero-blob{
	position:absolute; pointer-events:none; z-index:0;
	background:linear-gradient(98.24deg, #39982A 58.33%, #E9601A 100%);
	box-shadow:0 4px 4px rgba(0,0,0,.25);
	filter:blur(105px);
}
.blog-hero-blob-tr{ width:420px; height:520px; right:-220px; top:-260px; transform:rotate(124.29deg); }
.blog-hero-blob-bl{ width:340px; height:420px; left:-220px; bottom:-260px; transform:rotate(-57.82deg); }
.blog-hero-noise{
	position:absolute; inset:0; z-index:0; pointer-events:none;
	opacity:.22; mix-blend-mode:overlay;
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
	background-size:180px 180px;
}
.blog-hero .container{ position:relative; z-index:1; }
.blog-hero-title{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:60px; line-height:120%; letter-spacing:.01em; color:#FCFCFC; margin:0 0 50px; }

.blog-slider{ display:flex; flex-direction:column; gap:40px; }

.blog-slider-label-row{ display:flex; align-items:center; gap:23px; }
.blog-slider-label{ font-family:'Unbounded', sans-serif; font-weight:400; font-size:20px; line-height:100%; color:#FCFCFC; margin:0; flex-shrink:0; }
.blog-slider-line{ flex:1; height:0; border-top:2px solid rgba(255,255,255,.2); }

.blog-slider-card{ display:flex; flex-direction:row; align-items:center; padding:20px 40px 20px 20px; gap:40px; background:#FCFCFC; border-radius:20px; }
.blog-slider-track{ width:100%; }
.blog-slide{ display:none; flex-direction:row; align-items:center; gap:40px; }
.blog-slide.is-active{ display:flex; }
.blog-slide-media{ width:610.5px; max-width:44vw; height:400px; border-radius:20px; overflow:hidden; background:#000; flex-shrink:0; }
.blog-slide-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.blog-slide-body{ display:flex; flex-direction:column; justify-content:space-between; gap:20px; }
.blog-slide-body h3{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:32px; line-height:120%; color:#181C1E; margin:0; }
.blog-slide-body p{ font-family:'Montserrat', sans-serif; font-weight:400; font-size:18px; line-height:150%; color:#838181; margin:0; }

.blog-card-meta{ display:flex; align-items:center; gap:14px; }
.blog-card-cat{ font-family:'Unbounded', sans-serif; font-weight:300; font-size:14px; line-height:140%; letter-spacing:.02em; color:#AFAFAF; }
.blog-card-meta-sep{ display:inline-block; width:0; height:20px; border-left:1px solid #AFAFAF; }
.blog-card-date{ font-family:'Unbounded', sans-serif; font-weight:300; font-size:14px; line-height:140%; letter-spacing:.02em; color:#AFAFAF; }

.link-arrow{ font-family:'Montserrat', sans-serif; font-weight:600; font-size:18px; color:#096415; display:inline-flex; align-items:center; gap:8px; }
.link-arrow:hover{ text-decoration:underline; }

.blog-slider-dots{ display:flex; justify-content:center; align-items:center; gap:6px; }
.blog-slider-dot{ width:8px; height:8px; border-radius:20px; background:none; border:1px solid rgba(255,255,255,.6); padding:0; cursor:pointer; }
.blog-slider-dot.is-active{ width:32px; background:#FCFCFC; border-color:#FCFCFC; }

@media (max-width:860px){
	.blog-slider-card{ flex-direction:column; padding:20px; }
	.blog-slide{ flex-direction:column; }
	.blog-slide-media{ width:100%; max-width:100%; height:auto; aspect-ratio:16/10; }
}

/* --- Список --- */
.blog-list{ background:#FCFCFC; padding:60px 0 100px; }
.breadcrumbs{ display:flex; align-items:center; gap:0; font-family:'Unbounded', sans-serif; font-weight:400; font-size:16px; margin-bottom:28px; }
.breadcrumbs a{ display:inline-flex; align-items:center; gap:8px; color:#181C1E; padding:10px; }
.breadcrumbs a:hover{ color:#096415; }
.breadcrumbs span:not(.is-current){ padding:10px; font-weight:300; color:#181C1E; }
.breadcrumbs .is-current{ padding:10px; color:#959393; font-weight:400; }

.blog-list-title{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:40px; line-height:130%; color:#181C1E; margin:0 0 40px; }

.blog-controls{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; margin-bottom:40px; }
.blog-tabs{ display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.blog-tab{
	font-family:'Unbounded', sans-serif; font-weight:400; font-size:18px; line-height:140%; letter-spacing:.02em;
	color:#181C1E; background:none; border:none; border-radius:43px; padding:6px 18px; cursor:pointer;
	transition:background .15s ease, color .15s ease;
}
.blog-tab.is-active{ background:#096415; color:#FCFCFC; }

.blog-search{ display:flex; align-items:center; gap:10px; background:none; border:1px solid #D8D7DB; border-radius:100px; padding:8px 4px 8px 32px; width:336px; max-width:100%; }
.blog-search input{ flex:1; min-width:0; border:none; outline:none; background:none; font-family:'Montserrat', sans-serif; font-weight:300; font-size:14px; color:#838181; }
.blog-search-btn{
	display:flex; align-items:center; justify-content:center; flex-shrink:0;
	width:45px; height:45px; border-radius:100px; background:#096415; color:#fff; border:none; cursor:pointer;
}

.blog-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:40px 30px; transition:opacity .15s ease; }
.blog-grid.is-loading{ opacity:.4; pointer-events:none; }

.blog-card{ display:flex; flex-direction:column; gap:30px; background:#FCFCFC; border-radius:20px; }
.blog-card-media{ position:relative; display:block; overflow:hidden; border-radius:20px 20px 0 0; aspect-ratio:400/260; background:#0d1a06; }
.blog-card-media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .3s ease; }
.blog-card-overlay{
	position:absolute; inset:0; background:#096415; mix-blend-mode:hard-light;
	opacity:1; transition:opacity .2s ease;
}
.blog-card-media:hover img{ transform:scale(1.04); }
.blog-card-media:hover .blog-card-overlay{ opacity:.4; } /* при наведенні притлумлюємо зелений оверлей — фото проступає чіткіше */

.blog-card-body{ display:flex; flex-direction:column; gap:15px; padding:0 20px 20px; }
.blog-card-title{ margin:0; }
.blog-card-title a{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:20px; line-height:120%; color:#181C1E; transition:color .15s ease; }
.blog-card-title a:hover{ color:#FF922D; }
.blog-card-excerpt{ font-family:'Montserrat', sans-serif; font-weight:400; font-size:16px; line-height:150%; color:#838181; margin:0; }

@media (max-width:960px){ .blog-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:640px){ .blog-grid{ grid-template-columns:1fr; } .blog-controls{ flex-direction:column; align-items:flex-start; } .blog-search{ width:100%; } }

/* --- Пагінація --- */
.blog-pagination{ display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:16px; margin-top:64px; }
.blog-page-btn{
	display:flex; align-items:center; justify-content:center;
	width:48px; height:48px; border-radius:5px; border:1px solid #D8D7DB; background:none;
	font-family:'Unbounded', sans-serif; font-weight:400; font-size:15px; color:#5B5B5C; cursor:pointer;
}
.blog-page-btn.is-active{ border-color:#096415; color:#096415; }
.blog-page-btn[disabled]{ opacity:.35; cursor:default; }
.blog-page-next.is-filled{ background:#096415; border-color:#096415; }

.blog-page-chevron{ width:9px; height:9px; border-style:solid; border-color:#5B5B5C; border-width:0 1.5px 1.5px 0; border-radius:0 0 3px 0; }
.blog-page-chevron-prev{ transform:rotate(135deg); }
.blog-page-chevron-next{ transform:rotate(-45deg); }
.blog-page-next.is-filled .blog-page-chevron{ border-color:#FCFCFC; }

/* --- Пагінація новин (archive-news.php) --- Свідомо не JS/AJAX-кнопки, як
   .blog-pagination вище, а звичайні посилання WP-функції paginate_links()
   (у новин немає власного AJAX-ендпоінта). Стилі оформлені так, щоб виглядало
   так само, як і .blog-pagination — просто без CSS тут це були геть
   неоформлені дефолтні лінки браузера, майже непомітні на сторінці. */
.news-pagination{ display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:16px; margin-top:64px; }
.news-pagination .page-numbers{
	display:flex; align-items:center; justify-content:center;
	min-width:48px; height:48px; padding:0 16px; border-radius:5px; border:1px solid #D8D7DB;
	font-family:'Unbounded', sans-serif; font-weight:400; font-size:15px; color:#5B5B5C;
	text-decoration:none; background:none; box-sizing:border-box;
}
.news-pagination a.page-numbers:hover{ border-color:#096415; color:#096415; }
.news-pagination .page-numbers.current{ border-color:#096415; color:#096415; }
.news-pagination .page-numbers.dots{ border-color:transparent; }
.news-pagination .page-numbers.next,
.news-pagination .page-numbers.prev{ padding:0 20px; }