/* ════════════════════════════════════════════
   BLOG: article pages and blog index
   Loaded after style.css, uses its design tokens.
════════════════════════════════════════════ */

/* ── Article header ── */
.blog-head{padding:56px 0 0;background:var(--black)}
.blog-narrow{max-width:800px;margin:0 auto;padding:0 24px}
.blog-title{font-size:clamp(28px,4.6vw,44px);font-weight:900;line-height:1.12;letter-spacing:-.03em;margin:4px 0 22px;text-wrap:balance}
.blog-meta{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;color:var(--gray);padding-bottom:28px;border-bottom:1px solid var(--border)}
.blog-meta span{display:inline-flex;align-items:center;gap:7px}
.blog-meta svg{color:var(--yellow)}

/* ── Article body ── */
.blog-body{padding:12px 0 64px;background:var(--black)}
.blog-body p{font-size:16.5px;line-height:1.85;color:var(--gray-light);margin:0 0 18px}
.blog-body h2{font-size:clamp(22px,3vw,28px);font-weight:800;line-height:1.25;letter-spacing:-.02em;color:var(--white);margin:50px 0 14px;text-wrap:balance}
.blog-body h3{font-size:19px;font-weight:800;line-height:1.35;color:var(--white);margin:32px 0 10px}
.blog-body strong{color:var(--white);font-weight:700}
.blog-body a:not(.btn){color:var(--yellow);text-decoration:underline;text-decoration-color:rgba(255,215,0,.4);text-underline-offset:3px;transition:text-decoration-color .15s}
.blog-body a:not(.btn):hover{text-decoration-color:var(--yellow)}

/* Lists */
.blog-body ul,.blog-body ol{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-direction:column;gap:10px}
.blog-body li{position:relative;padding-left:26px;font-size:16px;line-height:1.75;color:var(--gray-light)}
.blog-body ul>li::before{content:"";position:absolute;left:4px;top:.74em;width:7px;height:7px;background:var(--yellow);border-radius:50%}
.blog-body ol{counter-reset:blogstep}
.blog-body ol>li{counter-increment:blogstep;padding-left:36px}
.blog-body ol>li::before{content:counter(blogstep);position:absolute;left:0;top:.16em;width:24px;height:24px;border-radius:50%;background:rgba(255,215,0,.12);border:1px solid rgba(255,215,0,.35);color:var(--yellow);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;line-height:1}

/* Tables */
.blog-table-wrap{overflow-x:auto;margin:24px 0 28px;border:1px solid var(--border);border-radius:8px;background:var(--black-2)}
table.blog-table{width:100%;border-collapse:collapse}
table.blog-table.cols-4{min-width:520px}
table.blog-table.cols-5,table.blog-table.cols-6{min-width:700px}
.blog-table th{background:var(--black-3);color:var(--yellow);font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:14px 16px;border-bottom:1px solid var(--border);white-space:nowrap}
.blog-table td{padding:13px 16px;font-size:14.5px;line-height:1.55;color:var(--gray-light);border-bottom:1px solid var(--border);vertical-align:top}
.blog-table tr:last-child td{border-bottom:none}
.blog-table td:first-child{color:var(--white);font-weight:700}
.blog-table td.price{color:var(--yellow);font-weight:700;white-space:nowrap}

/* Call / WhatsApp box inside articles */
.blog-cta{margin:38px 0;padding:28px;background:var(--black-3);border:1.5px solid var(--border-bright);border-radius:10px}
.blog-cta-title{font-size:clamp(19px,2.6vw,23px);font-weight:900;line-height:1.25;color:var(--white);margin-bottom:6px}
.blog-cta-sub{font-size:15px;line-height:1.6;color:var(--gray-light);margin-bottom:18px}
.blog-cta-btns{display:flex;flex-wrap:wrap;gap:12px}
.blog-cta-btns .btn{font-size:15px;padding:13px 24px}
.blog-cta-foot{margin-top:14px;font-size:12.5px;color:var(--gray)}

/* FAQ inside articles (reuses the site's accordion) */
.blog-body .faq-list{margin:18px 0 10px}
.blog-body .faq-a p{font-size:14.5px;line-height:1.7;color:var(--gray-light);margin:0}

/* ── Related posts and blog index cards ── */
.blog-related{background:var(--black-2);padding:64px 0}
.blog-index{background:var(--black);padding:16px 0 88px}
.blog-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.blog-cards.two{grid-template-columns:repeat(2,1fr)}
.blog-card{display:flex;flex-direction:column;gap:10px;padding:26px 24px;background:var(--black-3);border:1px solid var(--border);border-radius:8px;transition:border-color .2s,transform .2s}
.blog-card:hover{border-color:var(--yellow);transform:translateY(-3px)}
.blog-card-cat{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow)}
.blog-card-title{font-size:18px;font-weight:800;line-height:1.3;color:var(--white);margin:0}
.blog-card-desc{font-size:14px;line-height:1.65;color:var(--gray);flex:1}
.blog-card-meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;color:var(--gray);margin-top:4px}
.blog-card-more{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--yellow);margin-top:2px;transition:gap .2s}
.blog-card:hover .blog-card-more{gap:10px}
.blog-index-head{padding:64px 0 8px;background:var(--black)}
.blog-index-title{font-size:clamp(30px,5vw,48px);font-weight:900;line-height:1.1;letter-spacing:-.03em;margin:4px 0 16px}
.blog-index-sub{font-size:17px;line-height:1.7;color:var(--gray-light);max-width:620px}

@media(max-width:960px){
  .blog-cards{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .blog-head{padding-top:40px}
  .blog-narrow{padding:0 20px}
  .blog-body p{font-size:16px}
  .blog-cards,.blog-cards.two{grid-template-columns:1fr}
  .blog-cta{padding:22px 20px}
  .blog-cta-btns .btn{width:100%;justify-content:center}
}
