/*
 * HI Voice - プライバシーポリシーページ専用スタイル
 *
 * すべてのセレクタを body.page-id-3 にスコープし、
 * 他の固定ページ・投稿・トップページには影響を与えない。
 *
 * 対象: https://hivoice.org/?page_id=3
 */

/* ------------------------------------------------------------
   本文ラッパー: 最大幅・余白・行間・本文色
   ------------------------------------------------------------ */
body.page-id-3 .entry-content {
    max-width: 760px;
    margin: 0 auto;
    padding: 0 1.5rem 3rem;
    color: #1a1a1a;
    font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Yu Mincho', serif;
    font-size: 1rem;
    line-height: 1.9;
    word-break: break-word;
    overflow-wrap: anywhere;
}

/* ------------------------------------------------------------
   ページタイトル: 太めの下線で区切る
   ------------------------------------------------------------ */
body.page-id-3 .entry-title,
body.page-id-3 .entry-header .entry-title {
    max-width: 760px;
    margin: 2.5rem auto 1.5rem;
    padding: 0 1.5rem 0.6em;
    border-bottom: 3px solid #1a3a5c;
    color: #1a1a1a;
    font-family: 'Noto Sans JP', system-ui, sans-serif;
    font-weight: 700;
}

/* ------------------------------------------------------------
   見出し
   ------------------------------------------------------------ */
body.page-id-3 .entry-content h2 {
    margin: 2.8em 0 1em;
    padding: 0.3em 0;
    border: none;
    color: #1a3a5c;
    font-family: 'Noto Sans JP', system-ui, sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.5;
}

body.page-id-3 .entry-content h3 {
    margin: 2.2em 0 0.8em;
    padding-bottom: 0.3em;
    border-bottom: 1px solid #cbd5dd;
    color: #1a3a5c;
    font-family: 'Noto Sans JP', system-ui, sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.5;
}

body.page-id-3 .entry-content h4 {
    margin: 1.8em 0 0.6em;
    color: #1a1a1a;
    font-family: 'Noto Sans JP', system-ui, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
}

/* 連続する見出しの上余白を圧縮 */
body.page-id-3 .entry-content h2:first-child,
body.page-id-3 .entry-content h3:first-child {
    margin-top: 0;
}

/* ------------------------------------------------------------
   段落
   ------------------------------------------------------------ */
body.page-id-3 .entry-content p {
    margin: 0 0 1.4em;
}

/* ------------------------------------------------------------
   リスト: 標準ビュレットを表示
   ------------------------------------------------------------ */
body.page-id-3 .entry-content ul,
body.page-id-3 .entry-content ol {
    margin: 0 0 1.4em;
    padding-left: 1.7em;
}

body.page-id-3 .entry-content ul {
    list-style: disc;
}

body.page-id-3 .entry-content ol {
    list-style: decimal;
}

body.page-id-3 .entry-content li {
    margin-bottom: 0.5em;
    line-height: 1.85;
}

body.page-id-3 .entry-content li > ul,
body.page-id-3 .entry-content li > ol {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

body.page-id-3 .entry-content li > ul {
    list-style: circle;
}

/* ------------------------------------------------------------
   リンク: Primary紺・下線あり・長いURLは折り返し
   ------------------------------------------------------------ */
body.page-id-3 .entry-content a {
    color: #1a3a5c;
    text-decoration: underline;
    text-underline-offset: 2px;
    word-break: break-word;
    overflow-wrap: anywhere;
    transition: opacity 0.15s;
}

body.page-id-3 .entry-content a:hover,
body.page-id-3 .entry-content a:focus {
    opacity: 0.7;
    text-decoration: underline;
}

/* ------------------------------------------------------------
   強調
   ------------------------------------------------------------ */
body.page-id-3 .entry-content strong {
    font-weight: 700;
    color: #1a1a1a;
}

body.page-id-3 .entry-content em {
    font-style: italic;
}

/* ------------------------------------------------------------
   区切り線 (Gutenberg wp-block-separator 含む)
   ------------------------------------------------------------ */
body.page-id-3 .entry-content hr,
body.page-id-3 .entry-content .wp-block-separator {
    height: 0;
    margin: 2.5em 0;
    border: 0;
    border-top: 1px solid #cbd5dd;
    background: none;
}

/* ------------------------------------------------------------
   引用
   ------------------------------------------------------------ */
body.page-id-3 .entry-content blockquote {
    margin: 1.6em 0;
    padding: 0.9em 1.2em;
    border-left: 3px solid #1a3a5c;
    background: #f8fafc;
    color: #1a1a1a;
    font-style: normal;
}

body.page-id-3 .entry-content blockquote p {
    margin-bottom: 0.6em;
}

body.page-id-3 .entry-content blockquote p:last-child {
    margin-bottom: 0;
}

/* ------------------------------------------------------------
   テーブル
   ------------------------------------------------------------ */
body.page-id-3 .entry-content table {
    width: 100%;
    margin: 1.6em 0;
    border-collapse: collapse;
    font-size: 0.95rem;
}

body.page-id-3 .entry-content th,
body.page-id-3 .entry-content td {
    padding: 0.6em 0.8em;
    border: 1px solid #cbd5dd;
    text-align: left;
    vertical-align: top;
}

body.page-id-3 .entry-content th {
    background: #f3f6fa;
    font-weight: 700;
    color: #1a3a5c;
}

/* ------------------------------------------------------------
   コード
   ------------------------------------------------------------ */
body.page-id-3 .entry-content code {
    padding: 0.1em 0.4em;
    background: #f3f6fa;
    border-radius: 3px;
    font-size: 0.92em;
    color: #1a3a5c;
}

/* ------------------------------------------------------------
   モバイル (<= 600px)
   ------------------------------------------------------------ */
@media (max-width: 600px) {
    body.page-id-3 .entry-content {
        padding: 0 1rem 2rem;
        font-size: 0.95rem;
        line-height: 1.85;
    }

    body.page-id-3 .entry-title,
    body.page-id-3 .entry-header .entry-title {
        margin-top: 1.5rem;
        padding: 0 1rem 0.5em;
        font-size: 1.4rem;
    }

    body.page-id-3 .entry-content h2 {
        margin-top: 2.2em;
        padding: 0.45em 0.7em;
        font-size: 1.12rem;
    }

    body.page-id-3 .entry-content h3 {
        font-size: 1.02rem;
    }

    body.page-id-3 .entry-content ul,
    body.page-id-3 .entry-content ol {
        padding-left: 1.3em;
    }

    body.page-id-3 .entry-content blockquote {
        padding: 0.7em 0.9em;
    }
}
