/*
 Theme Name:   FarmingBengal
 Theme URI:    https://farmingbengal.in
 Description:  Plug-and-play Astra child theme for FarmingBengal.in. Auto-configures homepage, pages, menus, and categories on activation. Includes hero section, article cards, product grid, business directory, free tools, newsletter bar, and complete blog styling. Just activate and start publishing.
 Author:       FarmingBengal
 Author URI:   https://farmingbengal.in
 Template:     astra
 Version:      2.0.0
 License:      GNU General Public License v2 or later
 Text Domain:  farmingbengal
 Tags:         agriculture, farming, blog, e-commerce, custom-colors
*/

/* === BRAND TOKENS === */
:root{
--fb-dk:#1B4332;--fb-md:#2D5A27;--fb-ac:#4CAF50;--fb-acl:#A8E6A0;
--fb-abg:#EAF3DE;--fb-warm:#F9F8F3;--fb-w:#fff;--fb-tx:#333;
--fb-txl:#5C5A4E;--fb-txm:#8A8778;--fb-bd:#E8E5DA;--fb-bdl:#F0EDE4;
--fb-blu:#185FA5;--fb-blubg:#E6F1FB;--fb-amb:#854F0B;--fb-ambbg:#FAEEDA;
--fb-tl:#085041;--fb-tlbg:#E1F5EE;--fb-cor:#993C1D;--fb-corbg:#FAECE7;
--fb-r:8px;--fb-rl:12px;--fb-rp:24px;
--fb-sh:0 1px 3px rgba(0,0,0,.06);--fb-shm:0 4px 12px rgba(0,0,0,.08);
--fb-f:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
--fb-fm:'JetBrains Mono','SF Mono',Consolas,monospace;
}

/* === GLOBAL === */
body{font-family:var(--fb-f)!important;background:var(--fb-warm)!important;color:var(--fb-tx)!important;line-height:1.7}
a{color:var(--fb-ac);transition:color .2s}a:hover{color:var(--fb-dk)}
h1,h2,h3,h4,h5,h6{color:var(--fb-md)!important;font-weight:600;line-height:1.3}
img{max-width:100%;height:auto}
.fb-wrap{max-width:1140px;margin:0 auto;padding:0 20px}

/* === HEADER === */
.fb-header{background:var(--fb-w);border-bottom:1px solid var(--fb-bd);padding:0 20px;position:sticky;top:0;z-index:100}
.fb-header-inner{max-width:1140px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:64px}
.fb-logo{display:flex;align-items:center;gap:8px;text-decoration:none}
.fb-logo-icon{width:36px;height:36px;background:var(--fb-md);border-radius:8px;display:flex;align-items:center;justify-content:center}
.fb-logo-icon svg{width:20px;height:20px}
.fb-logo-text{font-size:18px;font-weight:700;color:var(--fb-dk)}
.fb-logo-sub{font-size:10px;color:var(--fb-txm);display:block;line-height:1.1;margin-top:-2px}
.fb-nav{display:flex;gap:4px;align-items:center}
.fb-nav a{font-size:14px;font-weight:500;color:var(--fb-txl);text-decoration:none;padding:8px 14px;border-radius:var(--fb-r);transition:all .15s}
.fb-nav a:hover,.fb-nav a.current{color:var(--fb-ac);background:var(--fb-abg)}
.fb-mobile-toggle{display:none;background:none;border:1px solid var(--fb-bd);border-radius:var(--fb-r);padding:6px 10px;cursor:pointer}
@media(max-width:768px){
  .fb-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--fb-w);flex-direction:column;padding:12px;border-bottom:1px solid var(--fb-bd);box-shadow:var(--fb-shm)}
  .fb-nav.open{display:flex}
  .fb-nav a{padding:12px 16px;border-bottom:1px solid var(--fb-bdl);border-radius:0}
  .fb-mobile-toggle{display:block}
}

/* === HERO === */
.fb-hero{background:var(--fb-dk);padding:48px 24px;text-align:center;position:relative;overflow:hidden}
.fb-hero::before{content:'';position:absolute;bottom:-50px;right:-40px;width:220px;height:220px;border-radius:50%;background:var(--fb-ac);opacity:.08}
.fb-hero::after{content:'';position:absolute;top:-30px;left:40px;width:140px;height:140px;border-radius:50%;background:var(--fb-acl);opacity:.06}
.fb-hero *{position:relative;z-index:1}
.fb-hero h1{font-size:30px!important;font-weight:700!important;color:var(--fb-acl)!important;margin-bottom:8px}
.fb-hero>p{font-size:15px;color:#7BC96F;margin-bottom:20px;line-height:1.6}
.fb-hero-stats{display:flex;justify-content:center;gap:32px;margin-bottom:22px}
.fb-hs{text-align:center}
.fb-hs .n{font-size:24px;font-weight:700;color:#fff}
.fb-hs .l{font-size:11px;color:#7BC96F;margin-top:2px}
.fb-hero-search{display:flex;gap:8px;max-width:500px;margin:0 auto}
.fb-hero-search input{flex:1;padding:12px 16px;font-size:14px;border:1px solid rgba(76,175,80,.4);border-radius:var(--fb-r);background:rgba(255,255,255,.08);color:#fff;outline:none;font-family:var(--fb-f)}
.fb-hero-search input::placeholder{color:rgba(168,230,160,.5)}
.fb-hero-search button{padding:12px 24px;font-size:14px;font-weight:600;background:var(--fb-ac);color:#fff;border:none;border-radius:var(--fb-r);cursor:pointer;font-family:var(--fb-f);transition:background .2s}
.fb-hero-search button:hover{background:#43A047}
@media(max-width:600px){.fb-hero h1{font-size:22px!important}.fb-hero-search{flex-direction:column}.fb-hero-stats{gap:20px}}

/* === TRUST BAR === */
.fb-trust{display:flex;justify-content:center;gap:24px;padding:12px 16px;background:var(--fb-w);border-bottom:1px solid var(--fb-bd);flex-wrap:wrap}
.fb-trust-i{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--fb-txm)}
.fb-trust-i svg{width:16px;height:16px;color:var(--fb-ac);flex-shrink:0}

/* === SECTION === */
.fb-section{padding:36px 0}
.fb-section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.fb-section-head h2{font-size:20px!important;margin:0}
.fb-section-head a{font-size:13px;color:var(--fb-blu);text-decoration:none;font-weight:500}
.fb-section-head a:hover{text-decoration:underline}
.fb-section-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--fb-txm);margin-bottom:6px}

/* === ARTICLE CARDS === */
.fb-articles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fb-acard{background:var(--fb-w);border:1px solid var(--fb-bd);border-radius:var(--fb-rl);overflow:hidden;transition:transform .2s,box-shadow .2s}
.fb-acard:hover{transform:translateY(-3px);box-shadow:var(--fb-shm)}
.fb-acard-img{height:160px;background-size:cover;background-position:center;background-color:var(--fb-abg);position:relative}
.fb-acard-body{padding:16px}
.fb-cat{display:inline-block;font-size:11px;font-weight:600;padding:3px 10px;border-radius:var(--fb-rp);margin-bottom:8px}
.cat-timber{background:var(--fb-tlbg);color:var(--fb-tl)}
.cat-land{background:var(--fb-ambbg);color:var(--fb-amb)}
.cat-monsoon{background:var(--fb-blubg);color:var(--fb-blu)}
.cat-intercrop{background:var(--fb-abg);color:var(--fb-md)}
.cat-govt{background:var(--fb-corbg);color:var(--fb-cor)}
.fb-acard h3{font-size:16px!important;font-weight:600;color:var(--fb-tx)!important;line-height:1.4;margin:0 0 8px}
.fb-acard h3 a{color:inherit;text-decoration:none}
.fb-acard h3 a:hover{color:var(--fb-ac)}
.fb-acard-meta{font-size:12px;color:var(--fb-txm);display:flex;justify-content:space-between}
@media(max-width:768px){.fb-articles{grid-template-columns:1fr}}
@media(min-width:769px)and(max-width:1024px){.fb-articles{grid-template-columns:repeat(2,1fr)}}

/* === PRODUCT CARDS === */
.fb-products{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.fb-pcard{background:var(--fb-w);border:1px solid var(--fb-bd);border-radius:var(--fb-rl);padding:16px;display:flex;gap:14px;align-items:flex-start;transition:transform .2s,box-shadow .2s}
.fb-pcard:hover{transform:translateY(-2px);box-shadow:var(--fb-sh)}
.fb-pcard-icon{width:52px;height:52px;border-radius:var(--fb-r);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fb-pcard h3{font-size:15px!important;font-weight:600;color:var(--fb-tx)!important;margin:0 0 4px}
.fb-pcard .price{font-size:14px;font-weight:700;margin-bottom:4px}
.fb-pcard .price del{color:var(--fb-txm);font-weight:400;font-size:12px}
.fb-pcard p{font-size:12px;color:var(--fb-txm);line-height:1.5;margin:0}
@media(max-width:600px){.fb-products{grid-template-columns:1fr}}

/* === DIRECTORY === */
.fb-directory{background:var(--fb-w);border:1px solid var(--fb-bd);border-radius:16px;padding:24px;margin:0 0 16px}
.fb-directory h2{font-size:18px!important;margin:0 0 4px}
.fb-directory>p{font-size:13px;color:var(--fb-txm);margin:0 0 14px}
.fb-dir-cats{display:flex;gap:8px;flex-wrap:wrap}
.fb-dir-cat{font-size:13px;padding:8px 18px;border-radius:var(--fb-rp);border:1px solid var(--fb-bd);background:var(--fb-w);color:var(--fb-txl);cursor:pointer;transition:all .2s;text-decoration:none;font-weight:500}
.fb-dir-cat:hover,.fb-dir-cat.on{background:var(--fb-ambbg);border-color:#FAC775;color:var(--fb-amb)}

/* === FREE TOOLS === */
.fb-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fb-tcard{background:var(--fb-w);border:1px solid var(--fb-bd);border-radius:var(--fb-rl);padding:20px;text-align:center;transition:transform .2s,box-shadow .2s}
.fb-tcard:hover{transform:translateY(-3px);box-shadow:var(--fb-shm)}
.fb-tcard-icon{width:48px;height:48px;border-radius:50%;margin:0 auto 12px;display:flex;align-items:center;justify-content:center}
.fb-tcard h3{font-size:15px!important;color:var(--fb-tx)!important;margin:0 0 6px}
.fb-tcard p{font-size:12px;color:var(--fb-txm);line-height:1.5;margin:0 0 12px}
.fb-tcard .tbtn{display:inline-block;padding:8px 20px;font-size:13px;font-weight:600;background:var(--fb-abg);color:var(--fb-md);border-radius:var(--fb-r);text-decoration:none;transition:background .2s}
.fb-tcard .tbtn:hover{background:#D4EDCC}
@media(max-width:768px){.fb-tools{grid-template-columns:1fr}}

/* === NEWSLETTER === */
.fb-newsletter{background:var(--fb-blubg);padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.fb-newsletter h3{font-size:16px!important;color:#0C447C!important;margin:0 0 2px}
.fb-newsletter>div>p{font-size:12px;color:var(--fb-blu);margin:0}
.fb-nl-form{display:flex;gap:8px}
.fb-nl-form input{padding:10px 14px;font-size:13px;border:1px solid #85B7EB;border-radius:var(--fb-r);width:240px;font-family:var(--fb-f);outline:none;background:var(--fb-w)}
.fb-nl-form input:focus{border-color:var(--fb-blu)}
.fb-nl-form button{padding:10px 20px;font-size:13px;font-weight:600;background:var(--fb-blu);color:#fff;border:none;border-radius:var(--fb-r);cursor:pointer;font-family:var(--fb-f);transition:background .2s}
.fb-nl-form button:hover{background:#0C447C}
@media(max-width:600px){.fb-newsletter{flex-direction:column;text-align:center;padding:20px}.fb-nl-form{width:100%}.fb-nl-form input{flex:1;width:auto}}

/* === FOOTER === */
.fb-footer{background:var(--fb-dk);color:var(--fb-acl);padding:40px 20px 20px}
.fb-footer-grid{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.fb-footer h4{color:#fff;font-size:14px!important;font-weight:600;margin:0 0 14px}
.fb-footer p{font-size:13px;line-height:1.7;color:#7BC96F;margin:0 0 8px}
.fb-footer a{color:#7BC96F;text-decoration:none;font-size:13px;display:block;padding:3px 0;transition:color .2s}
.fb-footer a:hover{color:#fff}
.fb-footer-bottom{max-width:1140px;margin:24px auto 0;padding-top:16px;border-top:1px solid rgba(168,230,160,.15);display:flex;justify-content:space-between;font-size:11px;color:rgba(168,230,160,.6)}
@media(max-width:768px){.fb-footer-grid{grid-template-columns:1fr 1fr;gap:24px}.fb-footer-bottom{flex-direction:column;gap:8px;text-align:center}}

/* === BLOG POST === */
.fb-post{max-width:760px;margin:0 auto;padding:40px 20px}
.fb-post .entry-title{font-size:30px!important;font-weight:700;line-height:1.3;margin-bottom:12px}
.fb-post-meta{font-size:13px;color:var(--fb-txm);margin-bottom:24px;display:flex;gap:16px;align-items:center}
.fb-post-meta .fb-cat{font-size:10px;padding:2px 8px}
.fb-post .entry-content{font-size:16px;line-height:1.85;color:var(--fb-tx)}
.fb-post .entry-content h2{font-size:22px!important;margin:32px 0 12px;padding-top:16px;border-top:1px solid var(--fb-bdl)}
.fb-post .entry-content h3{font-size:18px!important;margin:24px 0 10px}
.fb-post .entry-content blockquote{border-left:4px solid var(--fb-ac);background:var(--fb-abg);padding:16px 20px;margin:20px 0;border-radius:0 var(--fb-r) var(--fb-r) 0;font-style:italic;color:var(--fb-md)}
.fb-post .entry-content table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}
.fb-post .entry-content th{background:var(--fb-abg);color:var(--fb-md);font-weight:600;padding:10px 14px;text-align:left;border-bottom:2px solid var(--fb-ac)}
.fb-post .entry-content td{padding:10px 14px;border-bottom:1px solid var(--fb-bd)}
.fb-post .entry-content tr:hover{background:var(--fb-warm)}
.fb-post .entry-content img{border-radius:var(--fb-r);margin:16px 0}
.fb-post .entry-content ul,.fb-post .entry-content ol{padding-left:24px;margin:12px 0}
.fb-post .entry-content li{margin-bottom:6px}

/* === ARCHIVE / BLOG LISTING === */
.fb-archive{max-width:1140px;margin:0 auto;padding:32px 20px}
.fb-archive-header{margin-bottom:28px}
.fb-archive-header h1{font-size:26px!important;margin:0 0 4px}
.fb-archive-header p{font-size:14px;color:var(--fb-txm)}

/* === 404 === */
.fb-404{max-width:600px;margin:0 auto;padding:80px 20px;text-align:center}
.fb-404 h1{font-size:80px!important;color:var(--fb-abg)!important;margin:0}
.fb-404 h2{font-size:22px!important;margin:0 0 12px}
.fb-404 p{color:var(--fb-txm);margin-bottom:24px}

/* === BUTTONS === */
.fb-btn{display:inline-block;padding:12px 28px;font-size:14px;font-weight:600;background:var(--fb-ac);color:#fff;border:none;border-radius:var(--fb-r);cursor:pointer;text-decoration:none;transition:background .2s;font-family:var(--fb-f)}
.fb-btn:hover{background:#43A047;color:#fff}
.fb-btn-o{display:inline-block;padding:10px 24px;font-size:14px;font-weight:500;background:transparent;color:var(--fb-ac);border:1.5px solid var(--fb-ac);border-radius:var(--fb-r);text-decoration:none;transition:all .2s}
.fb-btn-o:hover{background:var(--fb-abg);color:var(--fb-md)}

/* === WOOCOMMERCE === */
.woocommerce ul.products li.product .price{color:var(--fb-md)!important;font-weight:700;font-size:16px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--fb-ac)!important;color:#fff!important;border-radius:var(--fb-r)!important;font-weight:600!important;font-family:var(--fb-f)!important;padding:10px 24px!important;border:none!important;transition:background .2s}
.woocommerce a.button:hover,.woocommerce button.button:hover{background:#43A047!important}

/* === ASTRA OVERRIDES === */
.ast-primary-header,.ast-primary-header-bar{display:none!important}
.ast-above-header,.ast-below-header{display:none!important}
.site-content>.ast-container{max-width:100%;padding:0}
#page>.site-content{margin-top:0}
.ast-footer-overlay,.site-footer{display:none!important}
.entry-header .entry-title{display:none}
