/*
Theme Name: bdithome leanding Theme
Theme URI: https://bdithome.com
Author: BDITHOME.COM
Author URI: https://bdithome.com
Description: Minimal Elementor-friendly theme with Redux Theme Options for BDITHOME.COM
Version: 9.9.9
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bdithome-leanding-theme
Tags: one-column, custom-logo, full-width-template
*/

/* =========================
   Reset
========================= */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
img { max-width: 100%; height: auto; }
a { color: inherit; }
main { display:block; }

/* =========================
   Container
========================= */
.bd-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

/* =========================
   Desktop/Mobile Visibility
   (header.php এর bd-only-* ক্লাসের সাথে match)
========================= */
.bd-only-desktop{ display:flex; }
.bd-only-mobile{ display:none; }

/* Desktop এ drawer/overlay পুরোপুরি বন্ধ */
.bd-overlay, .bd-mobile-nav{ display:none; }

@media (max-width: 980px){
  .bd-only-desktop{ display:none !important; }
  .bd-only-mobile{ display:flex !important; }

  /* Mobile এ drawer/overlay enable */
  .bd-overlay, .bd-mobile-nav{ display:block; }
}

/* =========================
   Topbar
========================= */
.bd-topbar{
  background:#0b1220;
  color:#fff;
  font-size:13px;
}
.bd-topbar-inner{
  height:40px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.bd-topbar-left{
  display:flex;
  gap:16px;
  align-items:center;
  flex-wrap:wrap;
}
.bd-topbar-link{
  color:#fff;
  text-decoration:none;
  opacity:.9;
}
.bd-topbar-link:hover{ opacity:1; }

.bd-topbar-right{
  display:flex;
  align-items:center;
  gap:12px;
}

/* Social circle */
.bd-social{ display:flex; gap:8px; align-items:center; }
.bd-social-btn{
  width:22px;height:22px;
  display:inline-flex;
  align-items:center;justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  text-decoration:none;
  font-weight:700;
  font-size:12px;
}
.bd-social-btn:hover{ background:rgba(255,255,255,.22); }

/* Mobile topbar spacing */
@media (max-width: 520px){
  .bd-topbar-inner{ height:auto; padding:8px 0; }
  .bd-topbar-left{ gap:22px; } /* phone-email gap */
}

/* =========================
   Main Header
========================= */
.bd-header{
  background:#fff;
  border-bottom:1px solid rgba(0,0,0,.06);
}
.bd-header-inner{
  height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.bd-brand{ display:flex; align-items:center; }
.bd-brand-wrap{
  display:flex;
  align-items:center;
  gap:32px; /* logo & inline order gap */
}

.bd-logo{
  height:48px;
  width:auto;
  max-width:160px;
  object-fit:contain;
  display:block;
}
.bd-site-title{
  font-weight:800;
  text-decoration:none;
  color:#111;
}

/* Mobile header padding */
@media (max-width: 980px){
  .bd-header-inner{ height:auto; padding:14px 0; }
  .bd-brand-wrap{ gap:14px; }
}

/* =========================
   Menu (Desktop)
========================= */
.bd-nav{ display:block; }

.bd-menu{
  list-style:none;
  display:flex;
  gap:22px;
  align-items:center;
  margin:0;
  padding:0;
}
.bd-menu li{ margin:0; padding:0; position:relative; }
.bd-menu a{
  color:#111;
  text-decoration:none;
  font-weight:600;
  position:relative;
  padding:8px 2px;
  display:inline-flex;
  align-items:center;
  gap:6px;
}

/* underline active/hover */
.bd-menu a:hover::after,
.bd-menu .current-menu-item > a::after,
.bd-menu .current-menu-ancestor > a::after{
  content:"";
  position:absolute;
  left:0; right:0;
  bottom:-10px;
  height:3px;
  border-radius:999px;
  background:#6d28d9;
}

/* Dropdown */
.bd-menu .menu-item-has-children > a::before{
  content:"▾";
  font-size:12px;
  opacity:.6;
  transform: translateY(-1px);
}
.bd-menu .sub-menu{
  list-style:none;
  margin:0;
  padding:10px 0;
  position:absolute;
  top:calc(100% + 14px);
  left:0;
  min-width:200px;
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  box-shadow:0 12px 30px rgba(0,0,0,.10);
  display:none;
  z-index:9999;
}
.bd-menu .sub-menu li a{
  width:100%;
  padding:10px 14px;
  display:flex;
  color:#111;
  font-weight:600;
}
.bd-menu .sub-menu li a:hover{
  background:rgba(109,40,217,.08);
}
.bd-menu li:hover > .sub-menu{ display:block; }

/* =========================
   Buttons (CTA)
========================= */
.bd-cta{ display:flex; gap:10px; align-items:center; }

.bd-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
  padding:10px 16px;
  border-radius:999px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}

/* Outline */
.bd-btn-outline{
  border:1px solid rgba(17,24,39,.25);
  color:#111;
  background:#fff;
}
.bd-btn-outline:hover{ border-color:rgba(17,24,39,.45); }

/* Primary */
.bd-btn-primary{
  color:#fff;
  background:linear-gradient(90deg,#6d28d9,#7c3aed);
  border:0;
}
.bd-btn-primary:hover{ filter: brightness(0.95); }

/* Inline order button default hidden (Desktop এ CTA থাকবে) */
.bd-order-inline{ display:none; }

/* Mobile এ logo পাশে inline order button show */
@media (max-width: 980px){
  .bd-order-inline{ display:inline-flex !important; }
  .bd-btn{ padding:9px 12px; font-size:13px; }
}
@media (max-width: 520px){
  .bd-order-inline{ padding:8px 12px !important; font-size:13px; }
}

/* =========================
   Hamburger
========================= */
.bd-burger{
  width:44px;
  height:44px;
  border:1px solid rgba(17,24,39,.15);
  background:#fff;
  border-radius:12px;
  padding:10px;
  cursor:pointer;
  display:none; /* desktop এ hidden */
}
.bd-burger span{
  display:block;
  height:2px;
  width:100%;
  background:#111;
  border-radius:999px;
  margin:5px 0;
}

/* Mobile এ hamburger show */
@media (max-width: 980px){
  .bd-burger{
    display:flex !important;
    align-items:center;
    justify-content:center;
  }
}

/* =========================
   Mobile Drawer + Overlay
========================= */
.bd-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.35);
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
  z-index:9998;
}

.bd-mobile-nav{
  position:fixed;
  top:0;
  right:0;
  width:82%;
  max-width:340px;
  height:100vh;
  background:#fff;
  transform:translateX(110%);
  transition:transform .22s ease;
  z-index:9999;
  padding:14px;
  box-shadow:-20px 0 40px rgba(0,0,0,.12);
}

.bd-mobile-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:6px 4px 10px;
  border-bottom:1px solid rgba(0,0,0,.08);
  margin-bottom:10px;
}
.bd-mobile-close{
  width:40px;height:40px;
  border:1px solid rgba(17,24,39,.15);
  background:#fff;
  border-radius:12px;
  cursor:pointer;
}

.bd-mobile-menu{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.bd-mobile-menu li{ margin:0; }
.bd-mobile-menu a{
  display:flex;
  padding:12px 12px;
  border-radius:12px;
  text-decoration:none;
  color:#111;
  font-weight:700;
  border:1px solid rgba(0,0,0,.06);
}
.bd-mobile-menu a:hover{
  background:rgba(109,40,217,.08);
  border-color:rgba(109,40,217,.18);
}

.bd-mobile-cta{
  margin-top:14px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

/* Open State */
body.bd-mobile-open .bd-overlay{
  opacity:1;
  pointer-events:auto;
}
body.bd-mobile-open .bd-mobile-nav{
  transform:translateX(0);
}









