        .blog-header { position: relative; isolation: isolate; overflow: hidden; padding: 76px 24px 82px; background: linear-gradient(125deg, #131514 0%, #1b1e1b 58%, #20251d 100%); color: white; }
        .blog-header::before { content: ''; position: absolute; z-index: -1; top: -190px; right: -90px; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(128, 183, 65, 0.22) 0%, rgba(128, 183, 65, 0) 68%); }
        .blog-header::after { content: ''; position: absolute; z-index: -1; inset: 0; opacity: 0.14; background-image: linear-gradient(rgba(255,255,255,0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.08) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(to left, #000, transparent 58%); }
        .blog-header-inner { position: relative; max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.5fr); gap: 72px; align-items: end; }
        .blog-header-main { max-width: 790px; }
        .blog-header-eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 22px; color: #acd777; font-family: 'Manrope', sans-serif; font-size: 0.76rem; font-weight: 700; letter-spacing: 0.16em; line-height: 1.3; text-transform: uppercase; }
        .blog-header-eyebrow::before { content: ''; width: 26px; height: 2px; background: currentColor; }
        .blog-header h1 { max-width: 760px; margin: 0; color: white; font-family: 'Playfair Display', serif; font-size: clamp(2.65rem, 5vw, 4.75rem); font-weight: 400; letter-spacing: -0.035em; line-height: 1.02; }
        .blog-header h1 em { color: #acd777; font-weight: 400; }
        .blog-header-main > p { max-width: 720px; margin: 26px 0 0; color: rgba(255,255,255,0.75); font-family: 'Manrope', sans-serif; font-size: clamp(1rem, 1.4vw, 1.12rem); line-height: 1.75; }
        .blog-header-note { padding: 8px 0 8px 30px; border-left: 1px solid rgba(172, 215, 119, 0.42); font-family: 'Manrope', sans-serif; }
        .blog-header-note strong { display: block; margin-bottom: 10px; color: white; font-size: 0.88rem; letter-spacing: 0.08em; text-transform: uppercase; }
        .blog-header-note span { display: block; color: rgba(255,255,255,0.62); font-size: 0.94rem; line-height: 1.65; }
        .blog-search-section { max-width: 850px; margin: 34px auto 0; padding: 0 20px; }
        .blog-search-form { padding: 22px; border: 1px solid #e0e5df; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(25,32,24,0.08); }
        .blog-search-form label { display: block; margin-bottom: 10px; color: #2b302c; font-family: 'Manrope', sans-serif; font-size: 0.92rem; font-weight: 700; }
        .blog-search-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; }
        .blog-search-input { width: 100%; min-height: 50px; padding: 12px 16px; border: 1px solid #bfc8bd; border-radius: 10px; color: #202420; background: #fff; font-family: 'Manrope', sans-serif; font-size: 1rem; }
        .blog-search-input:focus { border-color: #6f9d39; outline: 3px solid rgba(128,183,65,0.2); }
        .blog-search-submit, .blog-search-clear { min-height: 50px; padding: 11px 19px; border: 1px solid #6f9d39; border-radius: 10px; cursor: pointer; font-family: 'Manrope', sans-serif; font-size: 0.95rem; font-weight: 700; }
        .blog-search-submit { background: #80b741; color: #fff; }
        .blog-search-submit:hover { background: #6a9e32; }
        .blog-search-submit:disabled { cursor: wait; opacity: 0.65; }
        .blog-search-clear { background: #fff; color: #4f6636; }
        .blog-search-clear[hidden] { display: none; }
        .blog-search-status { min-height: 22px; margin: 10px 2px 0; color: #536052; font-family: 'Manrope', sans-serif; font-size: 0.9rem; line-height: 1.45; }
        .blog-search-status.error { color: #a11f1f; }
        .blog-filters { text-align: center; margin: 30px 0 14px; }
        .blog-filters button { display: inline-block; margin: 0 10px; padding: 10px 20px; border: 1px solid #ccc; background: transparent; color: #333; border-radius: 30px; cursor: pointer; font-family: 'Manrope', sans-serif; font-size: 1rem; transition: 0.3s; }
        .blog-filters button:hover, .blog-filters button.active { background: #333; color: white; border-color: #333; }
        .blog-subcategories { max-width: 1120px; margin: 0 auto 30px; padding: 0 20px; }
        .blog-subcategory-panel { padding: 17px 20px; border: 1px solid #dfe6db; border-radius: 14px; background: #f7faf4; text-align: center; }
        .blog-subcategory-panel[hidden] { display: none; }
        .blog-subcategory-label { display: block; margin-bottom: 11px; color: #5c675b; font-family: 'Manrope', sans-serif; font-size: .82rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
        .blog-subcategory-buttons { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
        .blog-subcategory-buttons button { padding: 8px 14px; border: 1px solid #b9c7b1; border-radius: 999px; background: #fff; color: #42513c; cursor: pointer; font-family: 'Manrope', sans-serif; font-size: .88rem; font-weight: 650; }
        .blog-subcategory-buttons button:hover, .blog-subcategory-buttons button.active { border-color: #6f9d39; background: #709f3c; color: #fff; }
        .blog-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 30px; max-width: 1200px; margin: 0 auto; padding: 0 20px 60px; }
        .blog-card { border-radius: 8px; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.05); text-decoration: none; color: #333; display: flex; flex-direction: column; background: #fff; transition: transform 0.3s ease; }
        .blog-card:hover { transform: translateY(-5px); }
        .blog-card-img { width: 100%; height: 200px; object-fit: cover; }
        .blog-card-content { padding: 20px; flex: 1; display: flex; flex-direction: column; }
        .blog-card-meta { font-size: 0.8rem; color: #777; margin-bottom: 10px; text-transform: uppercase; letter-spacing: 1px; }
        .blog-card-title { font-size: 1.25rem; font-weight: 600; margin: 0 0 10px; font-family: 'Playfair Display', serif; }
        .blog-card-desc { font-size: 0.95rem; color: #555; line-height: 1.5; margin: 0; }
        
        .filter-item { display: flex; }
        .filter-item.hide { display: none !important; }
        .blog-no-results { max-width: 850px; margin: 12px auto 34px; padding: 22px; border-radius: 12px; background: #f5f7f3; color: #4d584b; text-align: center; font-family: 'Manrope', sans-serif; }
        .blog-no-results[hidden] { display: none; }
        .page-contact .blog-pagination { display: flex; width: fit-content; max-width: calc(100% - 40px); flex-wrap: wrap; justify-content: center; align-items: center; gap: 7px; margin: -24px auto 64px; padding: 9px; border: 1px solid #e0e6dd; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(32, 42, 30, 0.08); }
        .page-contact .blog-pagination[hidden] { display: none; }
        .page-contact .blog-pagination button { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; min-width: 42px; min-height: 42px; margin: 0; padding: 8px 12px; border: 1px solid #cbd4c8; border-radius: 9px; background: #fff; color: #344033; cursor: pointer; font-family: 'Manrope', sans-serif; font-size: .92rem; line-height: 1; font-weight: 700; }
        .page-contact .blog-pagination button:hover, .page-contact .blog-pagination button.active { border-color: #638f35; background: #638f35; color: #fff; }
        .page-contact .blog-pagination button:focus-visible { outline: 3px solid rgba(128, 183, 65, 0.28); outline-offset: 2px; }
        .page-contact .blog-pagination button:disabled { cursor: default; opacity: .45; }

        @media (max-width: 800px) {
            .blog-header { padding: 58px 20px 62px; }
            .blog-header-inner { grid-template-columns: 1fr; gap: 34px; }
            .blog-header h1 { font-size: clamp(2.45rem, 12vw, 3.75rem); }
            .blog-header-note { max-width: 570px; padding: 24px 0 0; border-top: 1px solid rgba(172, 215, 119, 0.35); border-left: 0; }
            .blog-search-row { grid-template-columns: 1fr 1fr; }
            .blog-search-input { grid-column: 1 / -1; }
            .blog-search-submit, .blog-search-clear { width: 100%; }
            .blog-card-img { height: auto; aspect-ratio: 600 / 314; object-fit: contain; background: #f3f5f1; }
            .page-contact .blog-pagination { max-width: calc(100% - 32px); gap: 6px; margin: -18px auto 48px; padding: 8px; }
            .page-contact .blog-pagination button { min-width: 40px; min-height: 40px; padding: 7px 10px; font-size: .9rem; }
        }
    
