/*
Theme Name: BusinessMark
Theme URI: https://businesstomark.com
Author: BusinessToMark
Author URI: https://businesstomark.com
Description: Simple, clean & fast business theme for BusinessToMark.com. Homepage shows business categories and latest posts.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: businessmark
*/

/* ===== Reset ===== */
*{box-sizing:border-box;margin:0;padding:0;}
body{
  font-family:'Segoe UI', Arial, sans-serif;
  color:#2b2b2b;
  background:#f7f8fa;
  line-height:1.6;
}
a{text-decoration:none;color:#0d6efd;}
a:hover{color:#084298;}
img{max-width:100%;height:auto;display:block;}
ul{list-style:none;}
.container{max-width:1140px;margin:0 auto;padding:0 20px;}

/* ===== Header ===== */
.site-header{
  background:#0d1b2a;
  padding:18px 0;
}
.site-header .container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
}
.site-title{
  color:#fff;
  font-size:26px;
  font-weight:700;
  letter-spacing:.5px;
}
.site-title a{color:#fff;}
.site-description{
  color:#9fb3c8;
  font-size:13px;
  margin-top:2px;
}
.main-navigation ul{
  display:flex;
  gap:22px;
  flex-wrap:wrap;
}
.main-navigation a{
  color:#e6edf5;
  font-weight:600;
  font-size:15px;
}
.main-navigation a:hover{color:#4dabf7;}

/* ===== Hero ===== */
.hero{
  background:linear-gradient(135deg,#0d6efd,#0d1b2a);
  color:#fff;
  padding:60px 0;
  text-align:center;
}
.hero h1{font-size:34px;margin-bottom:10px;}
.hero p{font-size:17px;color:#dbe7fb;max-width:640px;margin:0 auto;}

/* ===== Sections ===== */
.section{padding:50px 0;}
.section-title{
  font-size:24px;
  margin-bottom:28px;
  text-align:center;
  color:#0d1b2a;
}

/* ===== Business Categories Grid ===== */
.categories-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:22px;
}
.category-card{
  background:#fff;
  border-radius:10px;
  padding:26px 20px;
  text-align:center;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
  transition:transform .2s ease, box-shadow .2s ease;
}
.category-card:hover{
  transform:translateY(-4px);
  box-shadow:0 8px 20px rgba(0,0,0,.1);
}
.category-card .cat-icon{
  width:52px;height:52px;
  margin:0 auto 14px;
  border-radius:50%;
  background:#e7f1ff;
  color:#0d6efd;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;font-weight:700;
}
.category-card h3{
  font-size:17px;
  margin-bottom:6px;
}
.category-card h3 a{color:#0d1b2a;}
.category-card .cat-count{
  font-size:13px;
  color:#6c757d;
}
.no-categories{
  text-align:center;
  color:#6c757d;
  padding:20px;
}

/* ===== Posts Grid ===== */
.posts-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:26px;
}
.post-card{
  background:#fff;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
  display:flex;
  flex-direction:column;
}
.post-card .post-thumb img{width:100%;height:170px;object-fit:cover;}
.post-card .post-thumb-placeholder{
  height:170px;
  background:#e9ecef;
  display:flex;align-items:center;justify-content:center;
  color:#adb5bd;font-size:13px;
}
.post-card-body{padding:18px 20px;flex:1;display:flex;flex-direction:column;}
.post-card-body .post-meta{font-size:12px;color:#6c757d;margin-bottom:8px;}
.post-card-body h3{font-size:18px;margin-bottom:10px;}
.post-card-body h3 a{color:#0d1b2a;}
.post-card-body p{font-size:14px;color:#495057;flex:1;}
.read-more{
  margin-top:12px;
  font-size:13px;
  font-weight:700;
  display:inline-block;
}
.no-posts{
  text-align:center;
  color:#6c757d;
  padding:30px;
  background:#fff;
  border-radius:10px;
}

/* ===== Content + Sidebar Layout ===== */
.content-layout{
  display:grid;
  grid-template-columns:1fr 300px;
  gap:34px;
  align-items:start;
}
.main-content{min-width:0;}

.sidebar{
  display:flex;
  flex-direction:column;
  gap:24px;
}
.widget{
  background:#fff;
  border-radius:10px;
  padding:22px;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
}
.widget-title{
  font-size:16px;
  color:#0d1b2a;
  margin-bottom:16px;
  padding-bottom:10px;
  border-bottom:2px solid #e9ecef;
}
.widget-list li{
  padding:9px 0;
  border-bottom:1px solid #f1f3f5;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.widget-list li:last-child{border-bottom:none;}
.widget-list li a{color:#2b2b2b;font-size:14px;font-weight:600;}
.widget-list li a:hover{color:#0d6efd;}
.widget-count{
  background:#e7f1ff;
  color:#0d6efd;
  font-size:12px;
  font-weight:700;
  padding:2px 9px;
  border-radius:20px;
  flex-shrink:0;
}
.widget-list-posts li{align-items:flex-start;}
.widget-post-thumb{
  width:56px;height:56px;border-radius:8px;overflow:hidden;flex-shrink:0;
}
.widget-post-thumb img{width:100%;height:100%;object-fit:cover;}
.widget-post-info{display:flex;flex-direction:column;gap:4px;}
.widget-post-info a{font-size:13.5px;line-height:1.4;}
.widget-post-date{font-size:11px;color:#6c757d;}
.widget-empty{font-size:13px;color:#6c757d;}

@media (max-width:900px){
  .content-layout{grid-template-columns:1fr;}
}

/* ===== Related Posts / Infinite Scroll ===== */
.related-posts-wrap{margin-top:44px;}
.related-loader{
  text-align:center;
  padding:18px;
  color:#6c757d;
  font-size:14px;
}

/* ===== Single / Page ===== */
.single-content, .page-content{
  background:#fff;
  padding:34px;
  border-radius:10px;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
}
.single-content h1, .page-content h1{margin-bottom:16px;font-size:28px;color:#0d1b2a;}
.single-content .entry-meta{font-size:13px;color:#6c757d;margin-bottom:20px;}
.entry-content p{margin-bottom:16px;}

/* ===== Pagination ===== */
.pagination{
  margin-top:34px;
  text-align:center;
}
.pagination a, .pagination span{
  display:inline-block;
  padding:8px 14px;
  margin:0 4px;
  background:#fff;
  border-radius:6px;
  color:#0d1b2a;
  box-shadow:0 1px 4px rgba(0,0,0,.08);
}
.pagination span.current{background:#0d6efd;color:#fff;}

/* ===== Footer ===== */
.site-footer{
  background:#0d1b2a;
  color:#c9d6e3;
  padding:30px 0;
  text-align:center;
  margin-top:40px;
  font-size:14px;
}
.site-footer a{color:#4dabf7;}

/* ===== Responsive ===== */
@media (max-width:768px){
  .site-header .container{flex-direction:column;align-items:flex-start;gap:12px;}
  .hero h1{font-size:26px;}
}
