/*
Theme Name: Bangladesh Insight (Kadence Child)
Theme URI: https://bangladesh-insight.media/
Description: Kadence 子テーマ。日本企業のためのバングラデシュ実務・市場分析メディア。トップページ・記事・アーカイブを独自レイアウトで実装し、ヘッダー/フッターは Kadence のビルダーに委ねています。
Author: Bangladesh Insight
Template: kadence
Version: 2.0.0
Text Domain: bangladesh-insight
*/

/* =========================================================
   0. 変数
   ========================================================= */
:root{
  --bi-paper:#fbfaf7;
  --bi-ink:#1c211e;
  --bi-ink-2:#3c423e;
  --bi-muted:#5f6560;
  --bi-faint:#8a857a;
  --bi-rule:#ddd8cc;
  --bi-red:#bf3b26;
  --bi-green:#0e5c44;
  --bi-forest:#16352a;
  --bi-cream:#f5f3ea;
  --bi-serif:'Source Serif 4',Georgia,'Times New Roman',serif;
  --bi-sans:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Noto Sans JP',sans-serif;
  --bi-mono:ui-monospace,SFMono-Regular,Menlo,monospace;
}

/* =========================================================
   1. Kadence のヘッダー/フッターをデザインに寄せる
   （マークアップは Kadence のまま、見た目だけ調整）
   ========================================================= */
body{background:var(--bi-paper);color:var(--bi-ink);font-family:var(--bi-sans);-webkit-font-smoothing:antialiased}
body a{color:var(--bi-green)}
body a:hover{color:var(--bi-red)}

/* 最上部の赤いアクセントバー */
.bi-accent-bar{height:4px;background:var(--bi-red)}

/* ---- トップページ：子テーマが描画する大型マストヘッド ---- */
.bi-masthead{background:var(--bi-paper);padding:30px 48px 20px;display:flex;flex-direction:column;align-items:center;gap:6px;border-bottom:1px solid var(--bi-rule);text-align:center}
.bi-masthead-tagline{font-family:var(--bi-sans);font-size:11px;letter-spacing:.18em;color:var(--bi-muted)}
.bi-masthead-title{font-family:var(--bi-serif);font-size:48px;font-weight:700;letter-spacing:.01em;line-height:1.1;color:var(--bi-ink);text-decoration:none}
.bi-masthead-title:hover{color:var(--bi-red)}
.bi-masthead-kana{font-family:var(--bi-sans);font-size:12px;letter-spacing:.32em;color:var(--bi-green);font-weight:500;text-indent:.32em}

/* トップではKadence側のロゴ/サイト名を隠し、ナビだけ中央に残す */
.home #masthead .site-branding,
.home #masthead .site-header-item.site-header-focus-item-logo{display:none}
.home #masthead{border-bottom:3px solid var(--bi-ink)}
.home #masthead .site-header-main-section-center,
.home #masthead .site-main-header-inner-wrap{justify-content:center}
.home #masthead .site-header-row-container-inner{padding:14px 0}

#masthead,#masthead .site-header-row-container-inner{background:var(--bi-paper)}
#masthead .site-title{font-family:var(--bi-serif);font-weight:700;letter-spacing:.01em;line-height:1.1;color:var(--bi-ink)}
#masthead .site-title:hover{color:var(--bi-red)}
#masthead .site-description{font-size:11px;letter-spacing:.18em;color:var(--bi-muted);font-family:var(--bi-sans)}
#masthead .header-navigation .header-menu-container>ul>li>a{font-family:var(--bi-sans);font-size:13.5px;font-weight:500;color:var(--bi-ink)}
#masthead .header-navigation .header-menu-container>ul>li>a:hover,
#masthead .header-navigation .header-menu-container>ul>li.current-menu-item>a,
#masthead .header-navigation .header-menu-container>ul>li.current-cat>a{color:var(--bi-red)}

/* 下層：コンパクトヘッダー */
body:not(.home) #masthead .site-title{font-size:21px}
body:not(.home) #masthead{border-bottom:1px solid var(--bi-rule)}

#colophon{background:var(--bi-paper);border-top:1px solid var(--bi-rule)}
#colophon,#colophon a{font-size:12px;color:var(--bi-muted)}
#colophon a:hover{color:var(--bi-red)}

/* =========================================================
   2. 共通レイアウト（子テーマ独自テンプレート）
   すべて .bi 配下にスコープし、Kadence 側と衝突させない
   ========================================================= */
.bi{max-width:1280px;margin:0 auto;font-family:var(--bi-sans);color:var(--bi-ink)}
.bi *,.bi *::before,.bi *::after{box-sizing:border-box}
.bi img{max-width:100%;height:auto;display:block}
.bi a{text-decoration:none}

.bi .section-head{display:flex;align-items:baseline;gap:18px;border-top:3px solid var(--bi-ink);padding-top:16px;margin-bottom:8px}
.bi .section-head.red{border-top-color:var(--bi-red)}
.bi .section-head h2{margin:0;font-family:var(--bi-serif);font-size:22px;font-weight:700}
.bi .section-head .lede{font-size:12.5px;color:var(--bi-muted)}
.bi .section{padding:0 48px 56px}

.bi .btn-solid{background:var(--bi-forest);color:var(--bi-cream);padding:13px 26px;font-size:13.5px;font-weight:500;display:inline-block}
.bi .btn-solid:hover{background:var(--bi-green);color:var(--bi-cream)}
.bi .btn-outline{border:1px solid var(--bi-ink);color:var(--bi-ink);padding:12px 26px;font-size:13.5px;font-weight:500;display:inline-block}
.bi .btn-outline:hover{background:var(--bi-ink);color:var(--bi-cream)}

/* =========================================================
   3. トップページ
   ========================================================= */
.bi .hero{display:grid;grid-template-columns:1fr 340px;gap:48px;padding:44px 48px 52px}
.bi .hero-main{display:flex;flex-direction:column;gap:20px}
.bi .hero-label{font-family:var(--bi-serif);font-size:12px;letter-spacing:.22em;color:var(--bi-red);font-weight:600}
.bi .hero h1{margin:0;font-family:var(--bi-serif);font-size:42px;font-weight:700;line-height:1.35;font-feature-settings:'palt';text-wrap:pretty}
.bi .hero-lede{font-size:15px;line-height:2;color:var(--bi-muted);max-width:560px;text-wrap:pretty}
.bi .hero-ctas{display:flex;gap:12px;margin-top:4px;flex-wrap:wrap}
.bi .hero-photo{margin-top:14px}
.bi .hero-photo img{width:100%;height:300px;object-fit:cover}
.bi .hero-side{display:flex;flex-direction:column;gap:28px;border-left:1px solid var(--bi-rule);padding-left:36px}

.bi .side-head{font-family:var(--bi-serif);font-size:13px;letter-spacing:.16em;font-weight:600;border-bottom:1px solid var(--bi-ink);padding-bottom:8px}
.bi .ranked-list{display:flex;flex-direction:column}
.bi .ranked-list a{color:var(--bi-ink);display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--bi-rule)}
.bi .ranked-list a:last-child{border-bottom:none}
.bi .ranked-list a:hover{color:var(--bi-red)}
.bi .ranked-list .num{font-family:var(--bi-serif);font-size:26px;color:var(--bi-red);line-height:1}
.bi .ranked-list .ttl{font-size:14.5px;font-weight:500;line-height:1.7}

.bi .search-box{margin-top:14px}
.bi .search-box input[type=search]{width:100%;border:1px solid #c9c4b6;padding:12px 14px;font-size:13px;background:#fff;font-family:inherit;color:var(--bi-ink);outline:none;border-radius:0}
.bi .search-box input[type=search]:focus{border-color:var(--bi-green)}
.bi .tag-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.bi .tag-links a{color:var(--bi-muted);border:1px solid var(--bi-rule);padding:5px 12px;font-size:12px}
.bi .tag-links a:hover{border-color:var(--bi-red);color:var(--bi-red)}

.bi .cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px}
.bi .cat-grid a{color:var(--bi-ink);border-top:1px solid var(--bi-rule);padding:18px 0 22px;display:flex;flex-direction:column;gap:7px}
.bi .cat-grid a:hover{color:var(--bi-red)}
.bi .cat-grid .name{font-size:16px;font-weight:700}
.bi .cat-grid .arrow{color:var(--bi-red)}
.bi .cat-grid .desc{font-size:13px;line-height:1.8;color:var(--bi-muted)}

.bi .purpose{padding:0 48px 56px;display:grid;grid-template-columns:340px 1fr;gap:48px}
.bi .purpose h2{margin:0;border-top:3px solid var(--bi-ink);padding-top:16px;font-family:var(--bi-serif);font-size:22px;font-weight:700;line-height:1.5}
.bi .purpose .lede{font-size:12.5px;line-height:1.9;color:var(--bi-muted);margin-top:10px}
.bi .purpose-list{display:flex;flex-direction:column;border-top:3px solid var(--bi-ink)}
.bi .purpose-list a{color:var(--bi-ink);display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 0;border-bottom:1px solid var(--bi-rule);font-size:15px;font-weight:500}
.bi .purpose-list a:last-child{border-bottom:none}
.bi .purpose-list a:hover{color:var(--bi-red)}
.bi .purpose-list .arrow{color:var(--bi-red)}

.bi .card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:14px}
.bi .card{color:var(--bi-ink);display:flex;flex-direction:column;gap:11px}
.bi .card:hover{color:var(--bi-red)}
.bi .card .thumb{height:160px;background:#e7e3d6;overflow:hidden;display:block}
.bi .card .thumb img{width:100%;height:160px;object-fit:cover}
.bi .card .cat{font-size:11.5px;letter-spacing:.1em;color:var(--bi-red);font-weight:700}
.bi .card .ttl{font-size:15px;font-weight:700;line-height:1.7}
.bi .card .date{font-family:var(--bi-mono);font-size:11px;color:var(--bi-faint)}

.bi .two-col{padding:0 48px 56px;display:grid;grid-template-columns:1fr 380px;gap:48px}
.bi .latest-list{display:flex;flex-direction:column}
.bi .latest-list a{color:var(--bi-ink);display:grid;grid-template-columns:100px 110px 1fr;gap:20px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--bi-rule)}
.bi .latest-list a:hover{color:var(--bi-red)}
.bi .latest-list .date{font-family:var(--bi-mono);font-size:11.5px;color:var(--bi-faint)}
.bi .latest-list .cat{font-size:11.5px;color:var(--bi-green);font-weight:700}
.bi .latest-list .ttl{font-size:15px;font-weight:500}

.bi .feature-list{display:flex;flex-direction:column;gap:14px;margin-top:8px}
.bi .feature-list a{color:var(--bi-ink);border:1px solid var(--bi-rule);padding:18px 20px;display:flex;flex-direction:column;gap:8px;background:#fff}
.bi .feature-list a:hover{border-color:var(--bi-red);color:var(--bi-red)}
.bi .feature-list .label{font-size:10.5px;letter-spacing:.14em;color:var(--bi-red);font-weight:700}
.bi .feature-list .label.green{color:var(--bi-green)}
.bi .feature-list .ttl{font-size:15px;font-weight:700}

.bi .about-col{border-top:3px solid var(--bi-ink);padding-top:16px}
.bi .about-col h2{margin:0 0 14px;font-family:var(--bi-serif);font-size:22px;font-weight:700}
.bi .about-col .body{font-size:14.5px;line-height:2.1;color:var(--bi-ink-2);max-width:640px;text-wrap:pretty}
.bi .about-col .btns{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}
.bi .about-col .btn-outline{padding:11px 24px;font-size:13px}
.bi .report-list{display:flex;flex-direction:column}
.bi .report-list .row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--bi-rule);color:var(--bi-ink)}
.bi .report-list a.row:hover{color:var(--bi-red)}
.bi .report-list .ttl{font-size:14px;font-weight:500}
.bi .report-list .badge{font-size:10.5px;font-weight:700;color:var(--bi-green);border:1px solid var(--bi-green);padding:3px 9px;flex-shrink:0}
.bi .report-list .row.soon{color:var(--bi-faint)}
.bi .report-list .row.soon .badge{color:var(--bi-faint);border-color:#c9c4b6}

.bi .cta-band{margin:0 48px 60px;background:var(--bi-forest);color:var(--bi-cream);padding:44px 48px;display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap}
.bi .cta-band h2{margin:0;font-family:var(--bi-serif);font-size:25px;font-weight:700;line-height:1.5;color:var(--bi-cream)}
.bi .cta-band .body{font-size:13.5px;line-height:2;color:#c9d2c8}
.bi .cta-band .txt{display:flex;flex-direction:column;gap:12px;max-width:640px}
.bi .cta-band .btns{display:flex;gap:12px;flex-wrap:wrap}
.bi .cta-band .btn-light{background:var(--bi-cream);color:var(--bi-forest);padding:13px 28px;font-size:13.5px;font-weight:700}
.bi .cta-band .btn-light:hover{background:#fff;color:var(--bi-red)}
.bi .cta-band .btn-ghost{border:1px solid var(--bi-cream);color:var(--bi-cream);padding:13px 28px;font-size:13.5px;font-weight:500}
.bi .cta-band .btn-ghost:hover{background:var(--bi-cream);color:var(--bi-forest)}

/* =========================================================
   4. 記事ページ
   ========================================================= */
.bi-article{max-width:1000px}
.bi .article-head{padding:44px 48px 0}
.bi .breadcrumb{font-family:var(--bi-mono);font-size:11px;color:var(--bi-faint);margin-bottom:20px;display:flex;gap:8px;flex-wrap:wrap}
.bi .breadcrumb a{color:var(--bi-faint)}
.bi .breadcrumb a:hover{color:var(--bi-red)}
.bi .article-cat{font-size:12px;letter-spacing:.14em;font-weight:700;margin-bottom:14px}
.bi .article-cat a{color:var(--bi-red)}
.bi .article-head h1{margin:0;font-family:var(--bi-serif);font-size:38px;font-weight:700;line-height:1.5;font-feature-settings:'palt';text-wrap:pretty}
.bi .article-meta{display:flex;gap:22px;margin-top:18px;padding-bottom:24px;border-bottom:1px solid var(--bi-rule);font-family:var(--bi-mono);font-size:11.5px;color:var(--bi-faint);flex-wrap:wrap}
.bi .article-layout{padding:32px 48px 60px;display:grid;grid-template-columns:1fr 260px;gap:52px}

/* 本文＝ブロックエディタ出力 */
.bi .article-body{font-size:16px;line-height:2.3;color:#2c322e}
.bi .article-body>*{margin:0 0 28px}
.bi .article-body>*:last-child{margin-bottom:0}
.bi .article-body>p:first-child{font-size:16.5px;line-height:2.2;color:var(--bi-ink-2)}
.bi .article-body h2{border-top:3px solid var(--bi-ink);padding-top:14px;font-family:var(--bi-serif);font-size:23px;font-weight:700;line-height:1.6;color:var(--bi-ink)}
.bi .article-body h3{font-size:18px;font-weight:700;color:var(--bi-ink)}
.bi .article-body blockquote{border-left:3px solid var(--bi-green);padding:6px 0 6px 24px;margin-left:0;font-family:var(--bi-serif);font-size:20px;line-height:1.9;color:var(--bi-forest)}
.bi .article-body blockquote p{margin:0}
.bi .article-body figure{margin-left:0;margin-right:0}
.bi .article-body figcaption{font-family:var(--bi-mono);font-size:11px;color:var(--bi-faint);text-align:right;margin-top:8px}
.bi .article-body ul,.bi .article-body ol{padding-left:24px}
.bi .article-body li{margin-bottom:8px}
.bi .article-body a{font-weight:500}
.bi .article-body .point-box{background:#f1efe7;border:1px solid var(--bi-rule);padding:22px 26px}
.bi .article-body .point-box>*{margin:0 0 10px}
.bi .article-body .point-box>*:last-child{margin-bottom:0}
.bi .article-body .point-box h4{font-size:12px;letter-spacing:.14em;color:var(--bi-green);font-weight:700;font-family:var(--bi-sans);border:none;padding:0}
.bi .article-body .point-box p{font-size:14.5px;line-height:2;color:var(--bi-ink-2)}

.bi .article-side{display:flex;flex-direction:column;gap:32px}
.bi .side-list{display:flex;flex-direction:column;font-size:13px;line-height:1.7}
.bi .side-list a{padding:10px 0;border-bottom:1px solid var(--bi-rule);color:var(--bi-muted)}
.bi .side-list a:last-child{border-bottom:none}
.bi .side-list a:hover{color:var(--bi-red)}
.bi .side-list-related{font-size:13.5px;font-weight:500;line-height:1.8}
.bi .side-list-related a{color:var(--bi-ink);padding:12px 0}
.bi .advisory{background:var(--bi-forest);color:var(--bi-cream);padding:24px 26px;display:flex;flex-direction:column;gap:12px}
.bi .advisory .label{font-size:11px;letter-spacing:.18em;color:#c9d2c8}
.bi .advisory .ttl{font-family:var(--bi-serif);font-size:16px;font-weight:700;line-height:1.7}
.bi .advisory a{background:var(--bi-cream);color:var(--bi-forest);padding:10px 0;font-size:12.5px;font-weight:700;text-align:center}
.bi .advisory a:hover{background:#fff;color:var(--bi-red)}

/* =========================================================
   5. アーカイブ・検索・固定ページ
   ========================================================= */
.bi .archive-head{padding:44px 48px 0}
.bi .archive-head .label{font-size:12px;letter-spacing:.14em;color:var(--bi-red);font-weight:700;margin-bottom:10px}
.bi .archive-head h1{margin:0;font-family:var(--bi-serif);font-size:34px;font-weight:700;line-height:1.5}
.bi .archive-head .desc{font-size:13.5px;line-height:2;color:var(--bi-muted);margin-top:12px;max-width:640px}
.bi .archive-body{padding:20px 48px 60px}
.bi .pagination{display:flex;gap:10px;margin-top:32px;font-family:var(--bi-mono);font-size:12.5px;flex-wrap:wrap}
.bi .pagination .page-numbers{border:1px solid var(--bi-rule);padding:8px 14px;color:var(--bi-muted)}
.bi .pagination .page-numbers.current{border-color:var(--bi-ink);color:var(--bi-ink);font-weight:700}
.bi .pagination a.page-numbers:hover{border-color:var(--bi-red);color:var(--bi-red)}
.bi .empty{padding:24px 0;color:var(--bi-muted)}

.bi-page-narrow{max-width:800px}
.bi .page-body{padding:44px 48px 60px}
.bi .page-body h1{margin:0 0 28px;font-family:var(--bi-serif);font-size:34px;font-weight:700;line-height:1.5;border-bottom:1px solid var(--bi-rule);padding-bottom:24px}

/* =========================================================
   6. レスポンシブ
   ========================================================= */
@media (max-width:960px){
  .bi .hero,.bi .purpose,.bi .two-col,.bi .article-layout{grid-template-columns:1fr}
  .bi .hero-side{border-left:none;padding-left:0}
  .bi .cat-grid{grid-template-columns:1fr 1fr}
  .bi .card-grid{grid-template-columns:1fr 1fr}
  .bi .hero,.bi .section,.bi .two-col,.bi .purpose,.bi .article-head,
  .bi .article-layout,.bi .archive-head,.bi .archive-body,.bi .page-body{padding-left:24px;padding-right:24px}
  .bi .cta-band{margin-left:24px;margin-right:24px;padding:32px 28px}
  .bi .hero h1{font-size:32px}
  .bi .article-head h1{font-size:28px}
  .bi-masthead{padding:24px 24px 16px}
  .bi-masthead-title{font-size:32px}
  .bi-masthead-kana{font-size:10.5px;letter-spacing:.24em}
}
@media (max-width:560px){
  .bi .cat-grid,.bi .card-grid{grid-template-columns:1fr}
  .bi .latest-list a{grid-template-columns:auto 1fr}
  .bi .latest-list .ttl{grid-column:1/-1}
}
