/* ==========================================================================
   Bozdağ Fidan — Main CSS
   Renk paleti logodan: Yeşil (#1F8A3F), Kahverengi (#7A4A1E), Krem (#FAF7F0)
   Font: Outfit + Playfair Display
   ========================================================================== */

:root{
  --bf-green:        #1F8A3F;
  --bf-green-dark:   #126B2D;
  --bf-green-deep:   #0E5023;
  --bf-green-mid:    #2EA557;
  --bf-green-soft:   #B7DDC2;
  --bf-green-tint:   #E8F4ED;
  --bf-green-25:     #F4FAF6;

  --bf-brown:        #7A4A1E;
  --bf-brown-dark:   #5A3611;
  --bf-brown-soft:   #C9A988;
  --bf-brown-tint:   #F2E7D8;

  --bf-cream:        #FAF7F0;
  --bf-cream-2:      #F4ECDC;

  --bf-text:         #1B2A1F;
  --bf-text-2:       #3D5446;
  --bf-text-3:       #6E8377;
  --bf-muted:        #93A599;
  --bf-border:       #E2EDE6;
  --bf-border-2:     #C9DDD0;
  --bf-white:        #ffffff;
  --bf-bg:           #F6FBF7;
  --bf-warning:      #C5852C;

  --bf-shadow-sm:    0 2px 8px rgba(11,80,35,.06), 0 1px 3px rgba(11,80,35,.04);
  --bf-shadow-md:    0 8px 28px rgba(11,80,35,.10), 0 4px 10px rgba(11,80,35,.05);
  --bf-shadow-lg:    0 24px 64px rgba(11,80,35,.18), 0 8px 18px rgba(11,80,35,.08);
  --bf-shadow-glow:  0 0 0 8px rgba(46,165,87,.18);

  --bf-radius-xs: 6px;
  --bf-radius-sm: 10px;
  --bf-radius:    16px;
  --bf-radius-lg: 22px;
  --bf-radius-xl: 32px;
  --bf-radius-pill: 9999px;

  --bf-font: 'Outfit', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --bf-serif:'Playfair Display', Georgia, serif;

  --bf-ease: cubic-bezier(.22,1,.36,1);
  --bf-ease-spring: cubic-bezier(.34,1.4,.64,1);

  --bf-container: 1280px;
  --bf-header-h:  84px;
  --bf-topbar-h:  40px;
}

*,*::before,*::after{ box-sizing: border-box; margin:0; padding:0;}
html{scroll-behavior:smooth; font-size:16px}
body{
  font-family:var(--bf-font);
  color:var(--bf-text);
  background:var(--bf-bg);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%; height:auto; display:block}
a{color:inherit; text-decoration:none; transition:color .25s var(--bf-ease)}
a:hover{color:var(--bf-green)}
button{font-family:inherit; cursor:pointer; border:0; background:none}
ul,ol{list-style:none}
::selection{background:var(--bf-green-soft); color:var(--bf-green-deep)}

.bf-container{max-width:var(--bf-container); margin:0 auto; padding:0 24px}
@media (max-width:760px){.bf-container{padding:0 16px}}

[dir="rtl"] body{font-family:'Cairo','Outfit',sans-serif}

/* TOPBAR */
.bf-topbar{
  background:linear-gradient(90deg, var(--bf-green-deep), var(--bf-green-dark));
  color:#dff5e6;
  font-size:13px;
  height:var(--bf-topbar-h);
  display:flex; align-items:center;
}
.bf-topbar a{color:#dff5e6; display:inline-flex; align-items:center; gap:6px}
.bf-topbar a:hover{color:#fff}
.bf-topbar svg{width:14px; height:14px}
.bf-topbar-row{display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%}
.bf-topbar-info{display:flex; gap:18px; align-items:center; flex-wrap:wrap}
.bf-topbar-info span{display:inline-flex; align-items:center; gap:6px}

.bf-topbar-lang{position:relative}
.bf-lang-toggle{
  background:rgba(255,255,255,.08);
  color:#fff; padding:6px 12px;
  border-radius:var(--bf-radius-pill);
  font-size:12.5px; font-weight:500;
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid rgba(255,255,255,.16);
  transition:.2s;
}
.bf-lang-toggle:hover{background:rgba(255,255,255,.18)}
.bf-caret{font-size:9px; opacity:.8}
.bf-lang-menu{
  position:absolute;
  top:calc(100% + 8px); right:0;
  background:#fff; color:var(--bf-text);
  border-radius:var(--bf-radius);
  border:1px solid var(--bf-border);
  box-shadow:var(--bf-shadow-md);
  padding:8px;
  width:280px;
  display:grid;
  gap:2px;
  opacity:0; visibility:hidden; transform:translateY(8px);
  transition:.25s var(--bf-ease);
  z-index:200;
}
.bf-lang-menu.open{opacity:1; visibility:visible; transform:translateY(0)}
.bf-lang-menu a{
  display:flex; align-items:center; gap:10px;
  padding:9px 12px; border-radius:10px;
  font-size:14px;
  transition:.2s;
}
.bf-lang-menu a:hover, .bf-lang-menu a.is-active{background:var(--bf-green-tint); color:var(--bf-green-deep)}
.bf-flag{font-size:18px; line-height:1}
.bf-lang-name{font-weight:600}
.bf-lang-country{margin-left:auto; font-size:12px; color:var(--bf-text-3)}
[dir="rtl"] .bf-lang-country{margin-left:0; margin-right:auto}

@media (max-width:780px){
  .bf-hide-md{display:none}
  .bf-topbar-info{gap:10px; font-size:12px}
}
@media (max-width:480px){
  .bf-hide-sm{display:none}
}

/* HEADER */
.bf-header{
  background:#fff;
  border-bottom:1px solid var(--bf-border);
  position:sticky; top:0; z-index:90;
  height:var(--bf-header-h);
  transition:box-shadow .3s var(--bf-ease), background .3s var(--bf-ease);
}
.bf-header.is-scrolled{box-shadow:var(--bf-shadow-md)}
.bf-header-inner{display:flex; align-items:center; gap:24px; height:100%}
.bf-logo img{height:54px; width:auto}
.bf-primary-nav{flex:1}
.bf-nav, .bf-nav .menu{display:flex; align-items:center; gap:4px; flex-wrap:wrap}
.bf-nav li a, .bf-nav .menu li a{
  display:block; padding:10px 16px;
  font-size:15px; font-weight:600;
  color:var(--bf-text-2);
  border-radius:var(--bf-radius-sm);
  transition:.2s;
}
.bf-nav li a:hover, .bf-nav li.current-menu-item a{background:var(--bf-green-tint); color:var(--bf-green-deep)}

.bf-header-cta{display:flex; gap:8px; align-items:center; margin-left:auto}
[dir="rtl"] .bf-header-cta{margin-left:0; margin-right:auto}

.bf-btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:11px 18px; border-radius:var(--bf-radius-pill);
  font-weight:600; font-size:14.5px;
  transition:.25s var(--bf-ease); white-space:nowrap;
  border:1.5px solid transparent;
}
.bf-btn svg{width:18px; height:18px}
.bf-btn-primary{background:var(--bf-green); color:#fff}
.bf-btn-primary:hover{background:var(--bf-green-dark); color:#fff; transform:translateY(-1px); box-shadow:var(--bf-shadow-md)}
.bf-btn-light{background:#fff; color:var(--bf-green-deep); border-color:var(--bf-green)}
.bf-btn-light:hover{background:var(--bf-green-tint)}
.bf-btn-wa{background:#25D366; color:#fff}
.bf-btn-wa:hover{background:#1DAA52; color:#fff}
.bf-btn-outline{background:transparent; color:var(--bf-green-deep); border-color:var(--bf-green-deep)}
.bf-btn-block{display:flex; justify-content:center; width:100%}
.bf-btn-lg{padding:14px 26px; font-size:16px}

.bf-burger{display:none; flex-direction:column; gap:5px; width:42px; height:42px; align-items:center; justify-content:center}
.bf-burger span{display:block; width:22px; height:2px; background:var(--bf-text); border-radius:2px; transition:.3s}
.bf-burger.is-open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.bf-burger.is-open span:nth-child(2){opacity:0}
.bf-burger.is-open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}

@media (max-width:980px){
  .bf-primary-nav{display:none}
  .bf-burger{display:flex}
  .bf-logo img{height:46px}
}

/* DRAWER */
.bf-drawer{
  position:fixed; top:0; right:-360px; bottom:0;
  width:340px; max-width:90vw;
  background:#fff;
  z-index:200;
  padding:28px 24px;
  box-shadow:var(--bf-shadow-lg);
  transition:right .35s var(--bf-ease);
  overflow:auto;
}
[dir="rtl"] .bf-drawer{right:auto; left:-360px; transition:left .35s var(--bf-ease)}
.bf-drawer.is-open{right:0}
[dir="rtl"] .bf-drawer.is-open{left:0; right:auto}
.bf-drawer-close{position:absolute; top:14px; right:14px; font-size:22px; color:var(--bf-text-3); width:34px; height:34px; border-radius:8px}
.bf-drawer-close:hover{background:var(--bf-green-tint)}
.bf-drawer-logo{height:50px; width:auto; margin:0 auto 24px; display:block}
.bf-drawer-nav, .bf-drawer-nav .menu{display:grid; gap:2px; margin-bottom:24px}
.bf-drawer-nav li a, .bf-drawer-nav .menu li a{
  display:block; padding:14px 16px;
  font-size:16px; font-weight:600;
  color:var(--bf-text-2);
  border-radius:var(--bf-radius-sm);
  border-bottom:1px solid var(--bf-border);
}
.bf-drawer-nav li a:hover{background:var(--bf-green-tint); color:var(--bf-green-deep)}
.bf-drawer-cta{display:grid; gap:10px; margin-top:8px}
.bf-overlay{
  position:fixed; inset:0;
  background:rgba(11,80,35,.45);
  z-index:150;
  opacity:0; visibility:hidden;
  transition:.3s;
}
.bf-overlay.is-visible{opacity:1; visibility:visible}

/* HERO SLIDER */
.bf-hero{
  position:relative;
  overflow:hidden;
  min-height:min(720px, 90vh);
  display:flex; align-items:center;
  isolation:isolate;
}
.bf-hero-slide{
  position:absolute; inset:0;
  opacity:0; visibility:hidden;
  transition:opacity 1s var(--bf-ease), visibility 1s;
  display:flex; align-items:center;
}
.bf-hero-slide.is-active{opacity:1; visibility:visible}
.bf-hero-slide::before{
  content:''; position:absolute; inset:0;
  background:linear-gradient(110deg, rgba(11,80,35,.78) 10%, rgba(11,80,35,.55) 50%, rgba(11,80,35,.25) 100%);
  z-index:1;
}
.bf-hero-slide::after{
  content:''; position:absolute; inset:0;
  background-size:cover;
  background-position:center;
  background-image:var(--bg);
  transform:scale(1.06);
  transition:transform 8s var(--bf-ease);
  z-index:0;
}
.bf-hero-slide.is-active::after{transform:scale(1)}
.bf-hero-content{
  position:relative; z-index:2;
  color:#fff;
  max-width:780px;
  padding:80px 0;
}
.bf-hero-kicker{
  display:inline-block;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(6px);
  padding:6px 14px;
  border-radius:var(--bf-radius-pill);
  font-size:13px; font-weight:600;
  text-transform:uppercase;
  letter-spacing:1.5px;
  margin-bottom:18px;
}
.bf-hero-title{
  font-family:var(--bf-serif);
  font-size:clamp(34px, 5.4vw, 64px);
  line-height:1.05;
  font-weight:700;
  margin-bottom:18px;
  text-shadow:0 4px 24px rgba(0,0,0,.25);
}
.bf-hero-sub{
  font-size:clamp(16px,1.8vw,19px);
  color:rgba(255,255,255,.92);
  max-width:600px;
  margin-bottom:30px;
}
.bf-hero-actions{display:flex; gap:12px; flex-wrap:wrap}
.bf-hero-pager{
  position:absolute; left:0; right:0; bottom:28px;
  z-index:3;
  display:flex; gap:10px; justify-content:center;
}
.bf-hero-pager button{
  width:40px; height:4px; border-radius:4px;
  background:rgba(255,255,255,.4);
  transition:.3s;
}
.bf-hero-pager button.is-active{background:#fff; width:60px}
.bf-hero-arrow{
  position:absolute; top:50%; transform:translateY(-50%);
  width:48px; height:48px; border-radius:50%;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.28);
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  z-index:3;
  transition:.25s;
}
.bf-hero-arrow:hover{background:rgba(255,255,255,.28)}
.bf-hero-arrow.prev{left:18px}
.bf-hero-arrow.next{right:18px}
@media (max-width:760px){.bf-hero-arrow{display:none}}

/* SECTIONS */
.bf-section{padding:96px 0}
.bf-section-tight{padding:60px 0}
@media (max-width:760px){.bf-section{padding:64px 0}}

.bf-sec-head{text-align:center; max-width:720px; margin:0 auto 56px}
.bf-sec-head .bf-tag{
  display:inline-flex; align-items:center; gap:6px;
  background:var(--bf-green-tint); color:var(--bf-green-deep);
  padding:6px 14px; border-radius:var(--bf-radius-pill);
  font-size:13px; font-weight:600;
  margin-bottom:14px;
}
.bf-sec-head h2{
  font-family:var(--bf-serif);
  font-size:clamp(28px,3.4vw,44px);
  line-height:1.15;
  color:var(--bf-text);
  margin-bottom:14px;
}
.bf-sec-head p{color:var(--bf-text-2); font-size:17px}
.bf-sec-head h2 em{font-style:normal; color:var(--bf-green)}

/* QUICK FEATURES */
.bf-quick{
  display:grid; gap:20px;
  grid-template-columns:repeat(auto-fit, minmax(220px,1fr));
  margin-top:-60px; position:relative; z-index:5;
}
.bf-quick-card{
  background:#fff;
  border-radius:var(--bf-radius);
  padding:28px 24px;
  box-shadow:var(--bf-shadow-md);
  border:1px solid var(--bf-border);
  display:flex; gap:16px; align-items:flex-start;
  transition:.3s var(--bf-ease);
}
.bf-quick-card:hover{transform:translateY(-4px); box-shadow:var(--bf-shadow-lg)}
.bf-quick-icon{
  width:56px; height:56px; border-radius:14px;
  background:var(--bf-green-tint); color:var(--bf-green);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.bf-quick-icon svg{width:30px; height:30px}
.bf-quick-card h4{font-size:17px; font-weight:700; color:var(--bf-text); margin-bottom:4px}
.bf-quick-card p{font-size:14.5px; color:var(--bf-text-2)}

/* SERVICES */
.bf-services{
  display:grid; gap:24px;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
}
.bf-service-card{
  background:#fff;
  border-radius:var(--bf-radius-lg);
  padding:36px 28px;
  border:1px solid var(--bf-border);
  position:relative;
  overflow:hidden;
  transition:.35s var(--bf-ease);
}
.bf-service-card::after{
  content:''; position:absolute; left:0; bottom:0; height:4px; width:0;
  background:linear-gradient(90deg, var(--bf-green), var(--bf-brown));
  transition:.4s var(--bf-ease);
}
.bf-service-card:hover{transform:translateY(-6px); box-shadow:var(--bf-shadow-lg); border-color:transparent}
.bf-service-card:hover::after{width:100%}
.bf-service-card .bf-quick-icon{margin-bottom:18px; width:62px; height:62px}
.bf-service-card h3{font-size:21px; font-weight:700; color:var(--bf-text); margin-bottom:10px}
.bf-service-card p{font-size:15px; color:var(--bf-text-2); margin-bottom:18px}
.bf-service-link{
  display:inline-flex; align-items:center; gap:6px;
  color:var(--bf-green-deep); font-weight:600; font-size:14.5px;
}
.bf-service-link:hover{color:var(--bf-green)}
.bf-service-link svg{width:14px; height:14px; transition:.2s}
.bf-service-link:hover svg{transform:translateX(4px)}
[dir="rtl"] .bf-service-link:hover svg{transform:translateX(-4px) rotate(180deg)}
[dir="rtl"] .bf-service-link svg{transform:rotate(180deg)}

/* CATEGORIES */
.bf-cats{
  display:grid; gap:20px;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
}
.bf-cat-card{
  position:relative;
  border-radius:var(--bf-radius-lg);
  overflow:hidden;
  aspect-ratio:4/5;
  isolation:isolate;
  border:1px solid var(--bf-border);
}
.bf-cat-card img{
  width:100%; height:100%; object-fit:cover;
  transition:transform .8s var(--bf-ease);
}
.bf-cat-card::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(11,80,35,0) 40%, rgba(11,80,35,.85) 100%);
  z-index:1;
}
.bf-cat-card:hover img{transform:scale(1.06)}
.bf-cat-info{
  position:absolute; left:0; right:0; bottom:0;
  padding:22px 22px;
  z-index:2;
  color:#fff;
}
.bf-cat-info h3{
  font-family:var(--bf-serif);
  font-size:24px;
  margin-bottom:4px;
}
.bf-cat-info span{font-size:13.5px; opacity:.85}

/* PLANT GRID */
.bf-products{
  display:grid; gap:24px;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
}
.bf-product-card{
  background:#fff;
  border-radius:var(--bf-radius);
  border:1px solid var(--bf-border);
  overflow:hidden;
  transition:.3s var(--bf-ease);
  display:flex; flex-direction:column;
}
.bf-product-card:hover{transform:translateY(-4px); box-shadow:var(--bf-shadow-md); border-color:var(--bf-green-soft)}
.bf-product-thumb{
  aspect-ratio:1/1; background:var(--bf-green-tint);
  position:relative; overflow:hidden;
}
.bf-product-thumb img{width:100%; height:100%; object-fit:cover; transition:transform .6s var(--bf-ease)}
.bf-product-card:hover .bf-product-thumb img{transform:scale(1.06)}
.bf-product-body{padding:18px 18px 22px; display:flex; flex-direction:column; gap:6px; flex:1}
.bf-product-card h3{font-size:17px; font-weight:700; color:var(--bf-text); line-height:1.3}
.bf-product-card .bf-latin{font-style:italic; font-size:13px; color:var(--bf-text-3)}
.bf-product-card p{font-size:14px; color:var(--bf-text-2); flex:1; margin-top:6px}
.bf-product-card .bf-product-cta{
  display:inline-flex; align-items:center; gap:6px;
  margin-top:10px;
  font-size:14px; font-weight:600;
  color:var(--bf-green-deep);
}

/* BLOG */
.bf-blog-grid{
  display:grid; gap:28px;
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
}
.bf-blog-card{
  background:#fff;
  border-radius:var(--bf-radius);
  border:1px solid var(--bf-border);
  overflow:hidden;
  transition:.3s var(--bf-ease);
}
.bf-blog-card:hover{transform:translateY(-4px); box-shadow:var(--bf-shadow-md)}
.bf-blog-thumb{aspect-ratio:16/10; overflow:hidden}
.bf-blog-thumb img{width:100%; height:100%; object-fit:cover; transition:transform .8s var(--bf-ease)}
.bf-blog-card:hover .bf-blog-thumb img{transform:scale(1.06)}
.bf-blog-body{padding:22px 22px 24px}
.bf-blog-meta{font-size:12.5px; color:var(--bf-text-3); margin-bottom:8px; text-transform:uppercase; letter-spacing:.5px}
.bf-blog-card h3{
  font-family:var(--bf-serif);
  font-size:22px;
  line-height:1.25;
  margin-bottom:10px;
  color:var(--bf-text);
}
.bf-blog-card p{font-size:14.5px; color:var(--bf-text-2); margin-bottom:14px}

/* ABOUT BAND */
.bf-about-band{
  background:linear-gradient(120deg, var(--bf-green-tint) 0%, var(--bf-cream) 100%);
  position:relative;
  overflow:hidden;
}
.bf-about-band::before{
  content:''; position:absolute;
  width:480px; height:480px; top:-180px; right:-160px;
  background:radial-gradient(circle, rgba(46,165,87,.18), transparent 70%);
  border-radius:50%;
}
.bf-about-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:64px;
  align-items:center;
  position:relative; z-index:1;
}
.bf-about-img{
  border-radius:var(--bf-radius-lg);
  overflow:hidden;
  aspect-ratio:5/6;
  box-shadow:var(--bf-shadow-lg);
  position:relative;
}
.bf-about-img img{width:100%; height:100%; object-fit:cover}
.bf-about-img::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, transparent 60%, rgba(11,80,35,.35) 100%);
}
.bf-about-text h2{
  font-family:var(--bf-serif);
  font-size:clamp(28px,3.2vw,42px);
  line-height:1.15; margin-bottom:18px;
}
.bf-about-text p{
  color:var(--bf-text-2);
  font-size:16px;
  margin-bottom:14px;
}
.bf-about-values{
  display:grid; grid-template-columns:1fr 1fr; gap:18px;
  margin-top:28px;
}
.bf-value{
  display:flex; gap:12px; align-items:flex-start;
  background:#fff;
  padding:16px;
  border-radius:14px;
  border:1px solid var(--bf-border);
}
.bf-value-num{
  width:42px; height:42px;
  border-radius:12px;
  background:var(--bf-green); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-weight:700; flex-shrink:0;
}
.bf-value strong{display:block; font-size:14.5px; color:var(--bf-text)}

@media (max-width:880px){
  .bf-about-grid{grid-template-columns:1fr; gap:32px}
}

/* CTA STRIP */
.bf-cta-strip{
  background:linear-gradient(120deg, var(--bf-green-deep), var(--bf-green-dark));
  background-image:
    radial-gradient(circle at 15% 30%, rgba(255,255,255,.08), transparent 40%),
    radial-gradient(circle at 85% 70%, rgba(255,255,255,.05), transparent 50%),
    linear-gradient(120deg, var(--bf-green-deep), var(--bf-green-dark));
  color:#fff;
  padding:60px 0;
  position:relative;
}
.bf-cta-inner{
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:40px;
  align-items:center;
}
.bf-cta-inner h2{
  font-family:var(--bf-serif);
  font-size:clamp(24px,3vw,36px);
  margin-bottom:8px;
}
.bf-cta-inner p{color:rgba(255,255,255,.85); font-size:16px}
.bf-cta-actions{display:flex; gap:12px; flex-wrap:wrap; justify-content:flex-end}
@media (max-width:760px){
  .bf-cta-inner{grid-template-columns:1fr; text-align:center}
  .bf-cta-actions{justify-content:center}
}

/* CONTACT MAP */
.bf-contact-map{
  border-radius:var(--bf-radius-lg);
  overflow:hidden;
  height:420px;
  border:1px solid var(--bf-border);
  box-shadow:var(--bf-shadow-md);
}
.bf-contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
}
@media (max-width:880px){.bf-contact-grid{grid-template-columns:1fr}}
.bf-contact-info{display:grid; gap:14px; margin-bottom:20px}
.bf-contact-line{
  display:flex; gap:14px; align-items:flex-start;
  background:#fff; padding:18px;
  border-radius:14px; border:1px solid var(--bf-border);
}
.bf-contact-line strong{display:block; font-size:13px; color:var(--bf-text-3); text-transform:uppercase; letter-spacing:.5px; margin-bottom:2px}
.bf-contact-line a, .bf-contact-line span{color:var(--bf-text); font-weight:500; font-size:15.5px}
.bf-contact-line .bf-quick-icon{width:42px; height:42px}
.bf-contact-line .bf-quick-icon svg{width:22px; height:22px}

.bf-form{
  background:#fff;
  padding:32px;
  border-radius:var(--bf-radius-lg);
  border:1px solid var(--bf-border);
  box-shadow:var(--bf-shadow-sm);
}
.bf-form .row{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px}
@media (max-width:600px){.bf-form .row{grid-template-columns:1fr}}
.bf-form label{display:block; font-size:13.5px; color:var(--bf-text-2); font-weight:600; margin-bottom:6px}
.bf-form input, .bf-form textarea, .bf-form select{
  width:100%; padding:13px 14px;
  background:var(--bf-bg);
  border:1.5px solid var(--bf-border-2);
  border-radius:12px;
  font-family:inherit; font-size:15px;
  color:var(--bf-text);
  transition:.2s;
}
.bf-form input:focus, .bf-form textarea:focus, .bf-form select:focus{
  outline:0;
  border-color:var(--bf-green);
  background:#fff;
  box-shadow:0 0 0 4px rgba(46,165,87,.18);
}
.bf-form textarea{min-height:140px; resize:vertical}
.bf-form-msg{font-size:14px; padding:10px 14px; border-radius:10px; margin-top:14px; display:none}
.bf-form-msg.is-ok{display:block; background:var(--bf-green-tint); color:var(--bf-green-deep)}
.bf-form-msg.is-err{display:block; background:#FEE7E7; color:#A02A2A}
.bf-form .check{display:flex; align-items:flex-start; gap:8px; font-size:13px; color:var(--bf-text-3); margin:8px 0 14px}
.bf-form .check input{width:auto; margin-top:3px}

/* FOOTER */
.bf-footer{
  background:#0E2716;
  color:#cfdbd1;
  padding:64px 0 0;
  position:relative;
  overflow:hidden;
}
.bf-footer::before{
  content:''; position:absolute;
  width:600px; height:600px;
  top:-280px; right:-260px;
  background:radial-gradient(circle, rgba(46,165,87,.16), transparent 70%);
  border-radius:50%;
}
.bf-footer-grid{
  display:grid; grid-template-columns:1.6fr 1fr 1fr 1.2fr; gap:40px;
  position:relative; z-index:1;
}
.bf-footer-brand img{height:54px; margin-bottom:16px}
.bf-footer-about{font-size:14.5px; line-height:1.7; color:#a8baad; max-width:340px}
.bf-socials{display:flex; gap:10px; margin-top:18px}
.bf-socials a{
  width:38px; height:38px;
  border-radius:50%;
  background:rgba(255,255,255,.06);
  display:flex; align-items:center; justify-content:center;
  color:#cfdbd1;
  transition:.2s;
}
.bf-socials a:hover{background:var(--bf-green); color:#fff; transform:translateY(-2px)}
.bf-socials svg{width:18px; height:18px}

.bf-footer-col h4{
  color:#fff; font-size:15px; font-weight:700;
  margin-bottom:18px; letter-spacing:.4px;
  text-transform:uppercase;
}
.bf-footer-col ul li{margin-bottom:8px}
.bf-footer-col ul li a{color:#a8baad; font-size:14px}
.bf-footer-col ul li a:hover{color:var(--bf-green-mid)}
.bf-footer-contact li{display:flex; gap:10px; align-items:flex-start; font-size:14px; color:#a8baad}
.bf-footer-contact li svg{width:16px; height:16px; color:var(--bf-green-mid); margin-top:3px; flex-shrink:0}
.bf-footer-contact a{color:#cfdbd1}
.bf-footer-contact a:hover{color:#fff}

.bf-footer-bottom{
  margin-top:50px;
  border-top:1px solid rgba(255,255,255,.07);
  padding:18px 0;
  font-size:13.5px;
  color:#7d9085;
}
.bf-footer-bottom-row{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px}
.bf-footer-langs{display:flex; gap:8px; flex-wrap:wrap}
.bf-footer-langs a{font-size:12.5px; padding:4px 8px; border-radius:6px; background:rgba(255,255,255,.05); transition:.2s}
.bf-footer-langs a:hover{background:rgba(46,165,87,.18); color:#fff}

@media (max-width:880px){.bf-footer-grid{grid-template-columns:1fr 1fr; gap:32px}}
@media (max-width:560px){.bf-footer-grid{grid-template-columns:1fr}}

/* FAB WhatsApp */
.bf-fab{
  position:fixed;
  right:20px; bottom:20px;
  width:60px; height:60px;
  border-radius:50%;
  background:#25D366;
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 12px 30px rgba(37,211,102,.45);
  z-index:120;
  transition:.3s var(--bf-ease);
}
.bf-fab:hover{transform:scale(1.08); color:#fff}
.bf-fab svg{width:30px; height:30px; position:relative; z-index:1}
.bf-fab-pulse{
  position:absolute; inset:-4px;
  border-radius:50%;
  border:3px solid #25D366;
  animation:fab-pulse 2.5s ease-out infinite;
}
@keyframes fab-pulse{
  0%   { transform:scale(.8); opacity:.7 }
  100% { transform:scale(1.6); opacity:0  }
}
[dir="rtl"] .bf-fab{right:auto; left:20px}

.bf-totop{
  position:fixed; right:20px; bottom:90px;
  width:44px; height:44px;
  border-radius:50%;
  background:#fff;
  color:var(--bf-green-deep);
  font-size:22px;
  box-shadow:var(--bf-shadow-md);
  z-index:115;
  opacity:0; visibility:hidden;
  transition:.3s var(--bf-ease);
}
.bf-totop.is-visible{opacity:1; visibility:visible}
[dir="rtl"] .bf-totop{right:auto; left:20px}

/* PAGE HEAD */
.bf-page-head{
  position:relative;
  background:linear-gradient(120deg, var(--bf-green-deep), var(--bf-green-dark));
  color:#fff;
  padding:92px 0 100px;
  overflow:hidden;
}
.bf-page-head::before{
  content:''; position:absolute; inset:0;
  background-image:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,.05), transparent 40%),
    radial-gradient(circle at 90% 70%, rgba(255,255,255,.05), transparent 50%);
}
.bf-page-head h1{
  font-family:var(--bf-serif);
  font-size:clamp(32px,4.6vw,52px);
  margin-bottom:8px;
  position:relative; z-index:1;
}
.bf-page-head p{font-size:17px; color:rgba(255,255,255,.85); max-width:700px; position:relative; z-index:1}
.bf-breadcrumb{
  position:relative; z-index:1;
  font-size:13px; color:rgba(255,255,255,.7);
  margin-bottom:14px;
  display:flex; gap:8px; align-items:center;
}
.bf-breadcrumb a{color:rgba(255,255,255,.85)}
.bf-breadcrumb a:hover{color:#fff}
.bf-breadcrumb svg{width:12px; height:12px}

/* CONTENT BLOCKS */
.bf-content{font-size:16.5px; color:var(--bf-text-2)}
.bf-content h2{font-family:var(--bf-serif); font-size:30px; margin:36px 0 14px; color:var(--bf-text)}
.bf-content h3{font-size:22px; font-weight:700; margin:24px 0 10px; color:var(--bf-text)}
.bf-content p{margin-bottom:16px}
.bf-content ul{margin:14px 0 18px 24px; list-style:disc}
.bf-content ul li{margin-bottom:6px}
.bf-content blockquote{
  border-left:4px solid var(--bf-green);
  padding:14px 22px;
  background:var(--bf-green-tint);
  border-radius:0 12px 12px 0;
  font-style:italic;
  margin:18px 0;
}

/* PRODUCT SINGLE */
.bf-single{display:grid; grid-template-columns:1.05fr 1fr; gap:48px}
@media (max-width:880px){.bf-single{grid-template-columns:1fr}}
.bf-single-thumb{border-radius:var(--bf-radius-lg); overflow:hidden; box-shadow:var(--bf-shadow-md); aspect-ratio:1/1; background:var(--bf-green-tint)}
.bf-single-thumb img{width:100%; height:100%; object-fit:cover}
.bf-single h1{font-family:var(--bf-serif); font-size:clamp(28px,3.4vw,42px); line-height:1.15; margin-bottom:8px}
.bf-single .bf-latin{font-style:italic; color:var(--bf-text-3); font-size:16px; margin-bottom:18px}
.bf-meta-table{
  margin-top:18px;
  background:#fff;
  border-radius:var(--bf-radius);
  border:1px solid var(--bf-border);
  overflow:hidden;
}
.bf-meta-table .row{
  display:grid; grid-template-columns:140px 1fr;
  border-bottom:1px solid var(--bf-border);
  padding:14px 18px;
}
.bf-meta-table .row:last-child{border:0}
.bf-meta-table .row strong{font-weight:600; color:var(--bf-text)}
.bf-meta-table .row span{color:var(--bf-text-2)}
.bf-single-actions{display:flex; gap:10px; margin-top:22px; flex-wrap:wrap}

/* FILTERS */
.bf-filters{
  display:flex; gap:8px; flex-wrap:wrap;
  margin-bottom:36px; justify-content:center;
}
.bf-filter-btn{
  padding:9px 16px;
  font-size:14px; font-weight:600;
  background:#fff;
  border:1.5px solid var(--bf-border);
  color:var(--bf-text-2);
  border-radius:var(--bf-radius-pill);
  transition:.2s;
}
.bf-filter-btn:hover, .bf-filter-btn.is-active{
  background:var(--bf-green); color:#fff;
  border-color:var(--bf-green);
}

/* PAGINATION */
.bf-pagination{display:flex; justify-content:center; gap:6px; margin-top:50px}
.bf-pagination a, .bf-pagination span{
  width:40px; height:40px; display:flex; align-items:center; justify-content:center;
  border-radius:10px; font-weight:600;
  background:#fff; border:1px solid var(--bf-border);
}
.bf-pagination a:hover, .bf-pagination .current{background:var(--bf-green); color:#fff; border-color:var(--bf-green)}

/* MISC */
.bf-divider{height:1px; background:var(--bf-border); margin:36px 0}
.bf-tag-pill{
  display:inline-flex; padding:4px 10px;
  border-radius:var(--bf-radius-pill);
  background:var(--bf-brown-tint); color:var(--bf-brown-dark);
  font-size:12px; font-weight:600;
}
