/* ============================================================
   业务专题详情页（Practice Area Detail）独立样式
   生成日期：2026-07-29
   ============================================================ */

/* === 主题色变量（与全站黑金一致） === */
.pa-detail {
    --pa-gold: #d4af37;
    --pa-gold-low: rgba(212, 175, 55, 0.2);
    --pa-gold-soft: rgba(212, 175, 55, 0.08);
    --pa-surface: #101415;
    --pa-surface-low: #0b0e0f;
    --pa-on-surface: #e5e2e1;
    --pa-on-surface-variant: #9ba0a1;
    --pa-outline: #434748;
    --pa-glass-bg: rgba(255, 255, 255, 0.02);
    --pa-glass-blur: blur(16px);

    background-color: var(--pa-surface);
    color: var(--pa-on-surface);
    font-family: 'Inter', 'PingFang SC', 'Microsoft YaHei', 'Hanken Grotesk', sans-serif;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
}

.pa-detail .font-serif {
    font-family: Georgia, 'Playfair Display', 'Songti SC', serif;
}

/* === 容器宽度（对齐全站 1200px） === */
.pa-detail .pa-container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 24px;
    padding-right: 24px;
}
@media (min-width: 768px) {
    .pa-detail .pa-container { padding-left: 64px; padding-right: 64px; }
}

/* === 玻璃卡片（与一级导航视觉一致） === */
.pa-detail .glass-card {
    background: var(--pa-glass-bg);
    -webkit-backdrop-filter: var(--pa-glass-blur);
    backdrop-filter: var(--pa-glass-blur);
    border: 1px solid var(--pa-gold-low);
    border-radius: 8px;
    transition: all 0.4s cubic-bezier(0.2, 0, 0.2, 1);
}
.pa-detail .glass-card:hover {
    border-color: var(--pa-gold);
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.04);
    box-shadow: 0 12px 40px -12px rgba(0, 0, 0, 0.5);
}

/* === 金色光晕背景 === */
.pa-detail .gold-halo {
    background: radial-gradient(circle at center, rgba(212, 175, 55, 0.1), transparent 70%);
}

/* === 入场动画 === */
.pa-detail .animate-fade-in-up {
    opacity: 0;
    transform: translateY(15px);
    animation: paFadeInUp 0.8s ease-out forwards;
}
@keyframes paFadeInUp {
    to { opacity: 1; transform: translateY(0); }
}

/* === 模块通用间距 === */
.pa-detail section {
    padding-top: 96px;
    padding-bottom: 96px;
}
@media (max-width: 768px) {
    .pa-detail section { padding-top: 56px; padding-bottom: 56px; }
}

/* === 正文渲染区：比通用 section 紧凑（避免与 H2 间距叠加过大） === */
.pa-detail .pa-content-section {
    padding-top: 64px;
    padding-bottom: 64px;
}

/* === CTA 区：顶部留白小，底部正常（避免与上方"相关业务"间距过大） === */
.pa-detail .pa-consult-section {
    padding-top: 32px;
}

/* === 顶部占位（由于 navbar 由 comm/head.html 提供，不再是 fixed） === */
.pa-detail .pa-top-spacer { height: 0; }

/* === 面包屑 === */
.pa-detail .pa-breadcrumb {
    padding-top: 32px;
    padding-bottom: 16px;
}
.pa-detail .pa-breadcrumb nav {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    opacity: 0.6;
}
.pa-detail .pa-breadcrumb a {
    color: var(--pa-on-surface-variant);
    transition: color 0.2s ease;
    text-decoration: none;
}
.pa-detail .pa-breadcrumb a:hover { color: var(--pa-gold); }
.pa-detail .pa-breadcrumb .sep { color: var(--pa-outline); }
.pa-detail .pa-breadcrumb .current { color: var(--pa-gold); }

/* === Hero 区 === */
.pa-detail .pa-hero {
    position: relative;
    min-height: 600px;
    display: flex;
    align-items: center;
    overflow: hidden;
    padding-top: 48px;
    padding-bottom: 48px;
}
@media (min-width: 1024px) {
    .pa-detail .pa-hero { min-height: 700px; }
}
.pa-detail .pa-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}
.pa-detail .pa-hero-bg .halo {
    position: absolute;
    inset: 0;
    opacity: 0.4;
}
.pa-detail .pa-hero-bg .img {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: 0.15;
}
/* Hero 背景图（所有业务专题共用的默认底图）
   使用站点绝对路径，避免 PbootCMS 解析模板时把 {pboot:sitepath} 错误转义
   若需每个业务专题独立背景图，请在 HTML 内用 inline style 覆盖：
   <div class="img pa-hero-img" style="background-image:url('{pboot:sitepath}/xxx.jpg');"></div> */
.pa-detail .pa-hero-bg .pa-hero-img {
    background-image: url(/static/upload/image/20260719/1784447697583958.png);
}
.pa-detail .pa-hero-bg .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, var(--pa-surface), transparent, transparent);
}
.pa-detail .pa-hero-inner {
    position: relative;
    z-index: 1;
    width: 100%;
}
.pa-detail .pa-hero-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 32px;
}
.pa-detail .pa-hero-eyebrow .bar {
    width: 32px;
    height: 1px;
    background: var(--pa-gold);
}
.pa-detail .pa-hero-eyebrow .label {
    font-size: 11px;
    letter-spacing: 0.3em;
    color: var(--pa-gold);
    text-transform: uppercase;
    font-weight: 600;
}
.pa-detail .pa-hero h1 {
    font-size: 56px;
    line-height: 1.05;
    letter-spacing: -0.02em;
    font-weight: 700;
    margin: 0 0 16px 0;
    color: var(--pa-on-surface);
}
@media (min-width: 1024px) {
    .pa-detail .pa-hero h1 { font-size: 64px; }
}
@media (max-width: 640px) {
    .pa-detail .pa-hero h1 { font-size: 36px; }
}
.pa-detail .pa-hero h1 .gold {
    color: rgba(212, 175, 55, 0.9);
}
.pa-detail .pa-hero .sub-en {
    font-family: Georgia, serif;
    font-style: italic;
    font-size: 20px;
    color: rgba(212, 175, 55, 0.6);
    margin: 0 0 32px 0;
    letter-spacing: 0.04em;
}
.pa-detail .pa-hero .lead {
    font-size: 18px;
    line-height: 1.65;
    color: var(--pa-on-surface-variant);
    max-width: 36rem;
    margin: 0 0 48px 0;
    opacity: 0.9;
}
.pa-detail .pa-hero-cta {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

/* === 按钮（无 Tailwind，独立样式） === */
.pa-detail .pa-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 16px 40px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: inherit;
}
.pa-detail .pa-btn i { line-height: 1; }
.pa-detail .pa-btn-primary {
    background: var(--pa-gold);
    color: #000;
}
.pa-detail .pa-btn-primary:hover {
    background: #fff;
    color: #000;
}
.pa-detail .pa-btn-outline {
    background: transparent;
    color: var(--pa-gold);
    border: 1px solid rgba(212, 175, 55, 0.4);
}
.pa-detail .pa-btn-outline:hover {
    border-color: var(--pa-gold);
    color: var(--pa-gold);
}

/* === 模块标题（标题 + 装饰条） === */
.pa-detail .pa-section-head {
    text-align: center;
    margin-bottom: 64px;
}
.pa-detail .pa-section-head .eyebrow {
    display: block;
    font-size: 10px;
    color: var(--pa-gold);
    letter-spacing: 0.4em;
    text-transform: uppercase;
    margin-bottom: 16px;
    font-weight: 600;
}
.pa-detail .pa-section-head h2 {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0;
}
.pa-detail .pa-section-head .underline {
    width: 64px;
    height: 1px;
    background: var(--pa-gold);
    margin: 24px auto 0;
}
@media (max-width: 640px) {
    .pa-detail .pa-section-head h2 { font-size: 28px; }
}

/* === 关于我们（业务概述）双栏 === */
.pa-detail .pa-about-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 64px;
    align-items: start;
}
@media (min-width: 768px) {
    .pa-detail .pa-about-grid {
        grid-template-columns: 7fr 5fr;
        gap: 96px;
    }
}
.pa-detail .pa-about h2 {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 600;
    margin: 0 0 40px 0;
    color: var(--pa-on-surface);
}
.pa-detail .pa-about p {
    font-size: 17px;
    line-height: 1.7;
    color: var(--pa-on-surface-variant);
    opacity: 0.8;
    margin: 0 0 24px 0;
}

/* === 数据卡 === */
.pa-detail .pa-stats {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}
.pa-detail .pa-stat-big {
    padding: 40px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.pa-detail .pa-stat-big .num {
    display: block;
    font-size: 48px;
    color: var(--pa-gold);
    font-weight: 700;
    margin-bottom: 12px;
    line-height: 1;
}
.pa-detail .pa-stat-big .lbl {
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--pa-on-surface-variant);
}
.pa-detail .pa-stat-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
.pa-detail .pa-stat-small {
    padding: 32px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.pa-detail .pa-stat-small .num {
    display: block;
    font-size: 24px;
    color: var(--pa-gold);
    font-weight: 600;
    margin-bottom: 8px;
    line-height: 1;
}
.pa-detail .pa-stat-small .lbl {
    font-size: 9px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--pa-on-surface-variant);
}

/* === 服务卡片网格 === */
.pa-detail .pa-service-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}
@media (min-width: 768px) {
    .pa-detail .pa-service-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
    .pa-detail .pa-service-grid { grid-template-columns: repeat(4, 1fr); }
}
.pa-detail .pa-service-card {
    padding: 32px;
    color: inherit; /* 当卡片是 <a> 时，防止浏览器默认蓝色覆盖子元素 */
}
.pa-detail a.pa-service-card { text-decoration: none; }
.pa-detail .pa-service-card .icon {
    font-size: 36px;
    color: rgba(212, 175, 55, 0.6);
    margin-bottom: 32px;
    transition: color 0.3s ease;
}
.pa-detail .pa-service-card:hover .icon { color: var(--pa-gold); }
.pa-detail .pa-service-card h3 {
    font-size: 20px;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0 0 16px 0;
}
.pa-detail .pa-service-card p {
    font-size: 14px;
    line-height: 1.65;
    color: var(--pa-on-surface-variant);
    opacity: 0.7;
    margin: 0;
}

/* === 深色背景区块（交替分隔） === */
.pa-detail .pa-dark-band {
    background: var(--pa-surface-low);
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

/* === Case Insight（实务观察） === */
.pa-detail .pa-case-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 64px;
    align-items: center;
}
@media (min-width: 1024px) {
    .pa-detail .pa-case-grid { grid-template-columns: 5fr 7fr; }
}
.pa-detail .pa-case-eyebrow {
    display: block;
    font-size: 10px;
    color: var(--pa-gold);
    letter-spacing: 0.4em;
    text-transform: uppercase;
    margin-bottom: 24px;
    font-weight: 600;
}
.pa-detail .pa-case h2 {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0 0 32px 0;
}
.pa-detail blockquote {
    border-left: 2px solid rgba(212, 175, 55, 0.4);
    padding: 8px 0 8px 32px;
    margin: 0;
}
.pa-detail blockquote p {
    font-size: 20px;
    font-style: italic;
    font-family: Georgia, serif;
    color: var(--pa-on-surface);
    line-height: 1.6;
    opacity: 0.9;
    margin: 0;
}
.pa-detail blockquote footer {
    margin-top: 24px;
    font-size: 10px;
    color: var(--pa-gold);
    letter-spacing: 0.15em;
    text-transform: uppercase;
}
.pa-detail .pa-case-list { display: grid; gap: 24px; }
.pa-detail .pa-case-item {
    display: flex;
    gap: 32px;
    align-items: flex-start;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.01);
    transition: all 0.3s ease;
}
.pa-detail .pa-case-item:hover {
    border-color: rgba(212, 175, 55, 0.2);
}
.pa-detail .pa-case-item .num {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid var(--pa-gold);
    color: var(--pa-gold);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    margin-top: 4px;
}
.pa-detail .pa-case-item h4 {
    font-size: 18px;
    font-weight: 600;
    color: var(--pa-gold);
    margin: 0 0 8px 0;
}
.pa-detail .pa-case-item p {
    font-size: 14px;
    color: var(--pa-on-surface-variant);
    line-height: 1.6;
    opacity: 0.7;
    margin: 0;
}

/* === 律师卡片 === */
.pa-detail .pa-lawyers-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 64px;
    gap: 16px;
    flex-wrap: wrap;
}
.pa-detail .pa-lawyers-head h2 {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 16px 0 0 0;
}
.pa-detail .pa-lawyers-link {
    font-size: 10px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--pa-gold);
    text-decoration: none;
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(212, 175, 55, 0.2);
    transition: color 0.2s ease;
}
.pa-detail .pa-lawyers-link:hover { color: #fff; }
.pa-detail .pa-lawyers-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
}
@media (min-width: 768px) {
    .pa-detail .pa-lawyers-grid { grid-template-columns: repeat(3, 1fr); }
}
.pa-detail .pa-lawyer-card {
    padding: 48px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.05);
}
.pa-detail .pa-lawyer-avatar {
    width: 128px;
    height: 128px;
    margin: 0 auto 32px;
    border-radius: 50%;
    border: 1px solid rgba(212, 175, 55, 0.3);
    padding: 6px;
    background: var(--pa-surface-low);
}
.pa-detail .pa-lawyer-avatar .img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    background-color: #e8e5e0;
}
.pa-detail .pa-lawyer-card h3 {
    font-size: 20px;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0 0 4px 0;
}
.pa-detail .pa-lawyer-card .title-en {
    font-size: 9px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--pa-gold);
    margin-bottom: 24px;
}
.pa-detail .pa-lawyer-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-bottom: 32px;
}
.pa-detail .pa-badge {
    background: rgba(212, 175, 55, 0.08);
    border: 1px solid rgba(212, 175, 55, 0.15);
    color: var(--pa-gold);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding: 2px 10px;
    border-radius: 99px;
    text-transform: uppercase;
}
.pa-detail .pa-lawyer-link {
    font-size: 10px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--pa-on-surface-variant);
    text-decoration: none;
    transition: color 0.2s ease;
}
.pa-detail .pa-lawyer-link:hover { color: var(--pa-gold); }

/* === 法规列表 === */
.pa-detail .pa-legal-list { display: grid; gap: 12px; }
.pa-detail .pa-legal-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 48px;
    flex-wrap: wrap;
    gap: 16px;
}
.pa-detail .pa-legal-head h2 {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0;
}
.pa-detail .pa-legal-head .year {
    color: var(--pa-gold);
    font-weight: 300;
}
.pa-detail .pa-legal-item {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    transition: background 0.3s ease;
}
@media (min-width: 768px) {
    .pa-detail .pa-legal-item {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}
.pa-detail .pa-legal-item:hover { background: var(--pa-gold-soft); }
.pa-detail .pa-legal-item h4 {
    font-size: 16px;
    color: var(--pa-gold);
    font-weight: 700;
    margin: 0 0 8px 0;
}
.pa-detail .pa-legal-meta {
    font-size: 10px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--pa-on-surface-variant);
    opacity: 0.6;
}
.pa-detail .pa-legal-desc {
    font-size: 14px;
    color: var(--pa-on-surface-variant);
    line-height: 1.65;
    opacity: 0.8;
    max-width: 28rem;
}
@media (min-width: 768px) {
    .pa-detail .pa-legal-desc { text-align: right; }
}

/* === FAQ 折叠面板（与 QAPage JSON-LD 对齐） === */
.pa-detail .pa-faq-wrap {
    max-width: 768px;
    margin: 0 auto;
    padding-left: 24px;
    padding-right: 24px;
}
.pa-detail .pa-faq-list { display: grid; gap: 12px; }
.pa-detail details.pa-faq-item {
    background: var(--pa-glass-bg);
    border: 1px solid rgba(0, 255, 255, 0.05);
    border-radius: 8px;
    margin-bottom: 12px;
    padding: 0;
    overflow: hidden;
    transition: border-color 0.2s ease;
}
.pa-detail details.pa-faq-item[open] {
    border-color: rgba(212, 175, 55, 0.3);
}
.pa-detail details.pa-faq-item > summary {
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px;
    cursor: pointer;
    background: rgba(255, 255, 255, 0.01);
    transition: background 0.2s ease;
}
.pa-detail details.pa-faq-item > summary:hover {
    background: rgba(255, 255, 255, 0.03);
}
.pa-detail details.pa-faq-item > summary::-webkit-details-marker { display: none; }
.pa-detail details.pa-faq-item > summary h4 {
    font-size: 14px;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0;
}
.pa-detail details.pa-faq-item > summary .toggler {
    color: rgba(212, 175, 55, 0.4);
    font-size: 18px;
    transition: transform 0.2s ease;
}
.pa-detail details.pa-faq-item[open] > summary .toggler {
    transform: rotate(45deg);
}
.pa-detail details.pa-faq-item .answer {
    padding: 8px 32px 24px;
    color: var(--pa-on-surface-variant);
    font-size: 14px;
    line-height: 1.65;
    opacity: 0.8;
}

/* === 正文渲染区（来自 {content:content}） === */
.pa-detail .pa-content {
    max-width: 800px;
    margin: 0 auto;
    padding-left: 24px;
    padding-right: 24px;
}
.pa-detail .pa-content h2 {
    font-size: 28px;
    font-weight: 600;
    color: var(--pa-gold);
    margin: 48px 0 16px;
    line-height: 1.3;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(212, 175, 55, 0.2);
}
.pa-detail .pa-content h2:first-child { margin-top: 0; }
.pa-detail .pa-content h3 {
    font-size: 20px;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 32px 0 12px;
}
.pa-detail .pa-content p {
    font-size: 16px;
    line-height: 1.8;
    color: var(--pa-on-surface-variant);
    margin: 0 0 16px;
}
.pa-detail .pa-content ul,
.pa-detail .pa-content ol {
    padding-left: 24px;
    margin: 0 0 24px;
    color: var(--pa-on-surface-variant);
    line-height: 1.8;
}
.pa-detail .pa-content li { margin-bottom: 8px; }
.pa-detail .pa-content strong { color: var(--pa-gold); font-weight: 600; }
.pa-detail .pa-content blockquote {
    margin: 24px 0;
    padding: 16px 24px;
    border-left: 3px solid var(--pa-gold);
    background: rgba(212, 175, 55, 0.03);
}
.pa-detail .pa-content blockquote p {
    margin: 0;
    color: var(--pa-on-surface);
    font-style: italic;
}

/* === 正文内的 details 统一样式（content-drafts 已统一为此结构） === */
.pa-detail .pa-content details {
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(212, 175, 55, 0.15);
    border-radius: 8px;
    margin-bottom: 12px;
    padding: 0;
    overflow: hidden;
    transition: border-color 0.2s ease;
}
.pa-detail .pa-content details[open] {
    border-color: rgba(212, 175, 55, 0.4);
}
.pa-detail .pa-content details > summary {
    list-style: none;
    padding: 16px 20px;
    cursor: pointer;
    font-weight: 600;
    color: var(--pa-on-surface);
    background: rgba(255, 255, 255, 0.01);
    position: relative;
    transition: background 0.2s ease;
}
.pa-detail .pa-content details > summary:hover {
    background: rgba(212, 175, 55, 0.05);
}
.pa-detail .pa-content details > summary::-webkit-details-marker { display: none; }
.pa-detail .pa-content details > summary::after {
    content: '+';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--pa-gold);
    font-size: 22px;
    font-weight: 400;
    font-family: 'Courier New', monospace; /* 等宽字体确保 +/- 符号清晰 */
    transition: transform 0.2s ease;
}
.pa-detail .pa-content details[open] > summary::after {
    content: '−'; /* U+2212 MINUS SIGN */
    transform: translateY(-50%) rotate(0deg);
}
.pa-detail .pa-content details > summary strong {
    color: var(--pa-on-surface);
}
.pa-detail .pa-content details p {
    padding: 0 20px 16px;
    margin: 0;
    color: var(--pa-on-surface-variant);
    font-size: 15px;
    line-height: 1.7;
}

/* === 实务观察与风险警示（Case Insight） ===
   ⚠️ 通过 .pa-content 内的 H2 文本自动识别应用样式
   草稿里写 <h2>独家案例视角（L2 独家层）</h2> 会自动套用本区块样式 */
.pa-detail .pa-case-insight {
    padding: 96px 0;
}
.pa-detail .pa-case-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 64px;
    align-items: center;
}
@media (min-width: 992px) {
    .pa-detail .pa-case-grid {
        grid-template-columns: 5fr 7fr;
        gap: 64px;
    }
}
.pa-detail .pa-case-left .eyebrow {
    display: block;
    font-size: 10px;
    letter-spacing: 0.4em;
    text-transform: uppercase;
    color: var(--pa-gold);
    margin-bottom: 24px;
}
.pa-detail .pa-case-left h2 {
    font-size: 36px;
    margin: 0 0 32px;
    color: var(--pa-on-surface);
}
.pa-detail .pa-case-quote {
    border-left: 2px solid rgba(212, 175, 55, 0.4);
    padding: 8px 0 8px 32px;
    margin: 0;
}
.pa-detail .pa-case-quote p {
    font-size: 20px;
    font-style: italic;
    font-family: Georgia, 'Playfair Display', serif;
    line-height: 1.6;
    color: var(--pa-on-surface);
    opacity: 0.9;
    margin: 0;
}
.pa-detail .pa-case-quote footer {
    margin-top: 24px;
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--pa-gold);
}
.pa-detail .pa-case-right {
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.pa-detail .pa-case-item {
    display: flex;
    gap: 32px;
    align-items: flex-start;
    padding: 24px;
    border-radius: 8px;
    transition: border-color 0.3s;
}
.pa-detail .pa-case-item .num {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid var(--pa-gold);
    color: var(--pa-gold);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    margin-top: 4px;
}
.pa-detail .pa-case-item h4 {
    font-size: 18px;
    color: var(--pa-gold);
    margin: 0 0 8px;
}
.pa-detail .pa-case-item p {
    font-size: 14px;
    line-height: 1.7;
    color: var(--pa-on-surface-variant);
    opacity: 0.7;
    margin: 0;
}

/* === 行业法规指南（Legal References） === */
.pa-detail .pa-legal-title {
    font-size: 36px;
    margin: 0 0 48px;
    color: var(--pa-on-surface);
}
.pa-detail .pa-legal-title .gold {
    color: var(--pa-gold);
    font-weight: 300;
}
.pa-detail .pa-legal-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.pa-detail .pa-legal-item {
    display: flex;
    flex-direction: column;
    padding: 24px;
    border-radius: 8px;
    transition: background-color 0.3s;
}
@media (min-width: 768px) {
    .pa-detail .pa-legal-item {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
    }
}
.pa-detail .pa-legal-item:hover {
    background: var(--pa-gold-soft);
}
.pa-detail .pa-legal-main {
    flex: 1;
}
.pa-detail .pa-legal-main h4 {
    font-size: 15px;
    font-weight: 700;
    color: var(--pa-gold);
    margin: 0 0 8px;
}
.pa-detail .pa-legal-main .meta {
    font-size: 10px;
    letter-spacing: 0.15em;
    color: var(--pa-on-surface-variant);
    opacity: 0.6;
    margin: 0;
}
.pa-detail .pa-legal-desc {
    font-size: 14px;
    line-height: 1.6;
    color: var(--pa-on-surface-variant);
    opacity: 0.8;
    max-width: 460px;
}
@media (min-width: 768px) {
    .pa-detail .pa-legal-desc {
        text-align: right;
    }
}

/* === 常见问题解答（FAQ） === */
.pa-detail .pa-faq-head {
    text-align: center;
    margin-bottom: 64px;
}
.pa-detail .pa-faq-head .eyebrow {
    display: block;
    font-size: 10px;
    letter-spacing: 0.4em;
    text-transform: uppercase;
    color: var(--pa-gold);
    margin-bottom: 16px;
}
.pa-detail .pa-faq-head h2 {
    font-size: 36px;
    margin: 0;
    color: var(--pa-on-surface);
}
.pa-detail .pa-faq-list {
    max-width: 768px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.pa-detail .pa-faq-item {
    overflow: hidden;
    border-radius: 8px;
}
.pa-detail .pa-faq-item summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px;
    cursor: pointer;
    list-style: none;
    transition: background-color 0.3s;
}
.pa-detail .pa-faq-item summary::-webkit-details-marker {
    display: none;
}
.pa-detail .pa-faq-item summary:hover {
    background: rgba(255, 255, 255, 0.03);
}
.pa-detail .pa-faq-item summary h4 {
    font-size: 14px;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0;
    padding-right: 16px;
}
.pa-detail .pa-faq-icon {
    flex-shrink: 0;
    color: rgba(212, 175, 55, 0.6);
    font-size: 20px;
    line-height: 1;
    transition: transform 0.3s;
}
.pa-detail .pa-faq-item[open] .pa-faq-icon {
    transform: rotate(45deg);
}
.pa-detail .pa-faq-answer {
    padding: 0 32px 24px 24px;
    font-size: 14px;
    line-height: 1.7;
    color: var(--pa-on-surface-variant);
    opacity: 0.8;
}

/* ★★★ 草稿正文 {content:content} 的自动样式映射 ★★★
   这些规则让草稿里的原始 HTML（H2/H3/ul/blockquote/details）
   自动套用上面的区块样式，无需在草稿里手写 class */

/* FAQ details 自动套用卡片样式 */
.pa-detail .pa-content details {
    overflow: hidden;
    border-radius: 8px;
    background: var(--pa-glass-bg);
    border: 1px solid rgba(255, 255, 255, 0.05);
    margin-bottom: 12px;
}
.pa-detail .pa-content details summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px;
    cursor: pointer;
    list-style: none;
    transition: background-color 0.3s;
}
.pa-detail .pa-content details summary::-webkit-details-marker {
    display: none;
}
.pa-detail .pa-content details summary:hover {
    background: rgba(255, 255, 255, 0.03);
}
.pa-detail .pa-content details summary::after {
    content: "+";
    flex-shrink: 0;
    color: rgba(212, 175, 55, 0.6);
    font-size: 20px;
    line-height: 1;
    transition: transform 0.3s;
}
.pa-detail .pa-content details[open] summary::after {
    transform: rotate(45deg);
}
.pa-detail .pa-content details summary p,
.pa-detail .pa-content details summary strong {
    font-size: 14px;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0;
    padding-right: 16px;
    flex: 1;
}
.pa-detail .pa-content details > p {
    padding: 0 32px 24px;
    font-size: 14px;
    line-height: 1.7;
    color: var(--pa-on-surface-variant);
    opacity: 0.8;
    margin: 0;
}

/* 草稿里的 blockquote 自动套用案例引用样式 */
.pa-detail .pa-content blockquote {
    border-left: 2px solid rgba(212, 175, 55, 0.4);
    padding: 8px 0 8px 32px;
    margin: 24px 0;
    background: transparent;
}
.pa-detail .pa-content blockquote p {
    font-size: 18px;
    font-style: italic;
    font-family: Georgia, 'Playfair Display', serif;
    line-height: 1.6;
    color: var(--pa-on-surface);
    opacity: 0.9;
    margin: 0;
}

/* 草稿里的"法律依据"列表自动套用金色边框 */
.pa-detail .pa-content h2 + p + ul,
.pa-detail .pa-content h2 + ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-left: 0;
    list-style: none;
    counter-reset: legal-counter;
}
.pa-detail .pa-content h2 + p + ul li,
.pa-detail .pa-content h2 + ul li {
    counter-increment: legal-counter;
    padding: 20px 24px;
    border-radius: 8px;
    background: var(--pa-glass-bg);
    border: 1px solid rgba(255, 255, 255, 0.05);
    transition: background-color 0.3s;
    position: relative;
    padding-left: 64px;
}
.pa-detail .pa-content h2 + p + ul li::before,
.pa-detail .pa-content h2 + ul li::before {
    content: counter(legal-counter);
    position: absolute;
    left: 24px;
    top: 20px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid var(--pa-gold);
    color: var(--pa-gold);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
}
.pa-detail .pa-content h2 + p + ul li:hover,
.pa-detail .pa-content h2 + ul li:hover {
    background: var(--pa-gold-soft);
}
.pa-detail .pa-content h2 + p + ul li strong,
.pa-detail .pa-content h2 + ul li strong {
    color: var(--pa-gold);
    font-weight: 700;
}

/* 草稿里的有序列表（独家案例的 ol 建议）保持金色编号 */
.pa-detail .pa-content ol {
    padding-left: 0;
    counter-reset: case-counter;
    list-style: none;
}
.pa-detail .pa-content ol > li {
    counter-increment: case-counter;
    position: relative;
    padding: 12px 0 12px 48px;
    font-size: 15px;
    line-height: 1.7;
    color: var(--pa-on-surface-variant);
    opacity: 0.85;
}
.pa-detail .pa-content ol > li::before {
    content: counter(case-counter);
    position: absolute;
    left: 0;
    top: 12px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid var(--pa-gold);
    color: var(--pa-gold);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
}

/* === 业务流程 === */
.pa-detail .pa-process {
    position: relative;
}
.pa-detail .pa-process h2 {
    font-size: 36px;
    text-align: center;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0 0 80px 0;
}
.pa-detail .pa-process-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    position: relative;
    z-index: 1;
}
@media (min-width: 768px) {
    .pa-detail .pa-process-grid { grid-template-columns: repeat(4, 1fr); gap: 48px; }
}
.pa-detail .pa-process-step {
    text-align: center;
}
.pa-detail .pa-process-step .step-num {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--pa-surface);
    border: 1px solid rgba(212, 175, 55, 0.5);
    color: var(--pa-gold);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    margin: 0 auto 24px;
    transition: all 0.3s ease;
}
.pa-detail .pa-process-step:hover .step-num {
    background: var(--pa-gold);
    color: #000;
}
.pa-detail .pa-process-step h3,
.pa-detail .pa-process-step h4 {
    font-size: 18px;
    font-weight: 600;
    color: var(--pa-on-surface);
    margin: 0 0 16px 0;
}
.pa-detail .pa-process-step p {
    font-size: 13px;
    color: var(--pa-on-surface-variant);
    opacity: 0.7;
    margin: 0;
    line-height: 1.6;
}
.pa-detail .pa-process-line {
    display: none;
}
@media (min-width: 768px) {
    .pa-detail .pa-process-line {
        display: block;
        position: absolute;
        top: 24px;
        left: 0;
        width: 100%;
        height: 1px;
        background-image: radial-gradient(rgba(212, 175, 55, 0.2) 1.2px, transparent 1.2px);
        background-size: 10px 10px;
        opacity: 0.2;
        z-index: 0;
    }
}

/* === CTA 表单 === */
.pa-detail .pa-cta-card {
    padding: 80px 40px;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 16px;
}
@media (min-width: 768px) {
    .pa-detail .pa-cta-card { padding: 80px; }
}
@media (min-width: 1024px) {
    .pa-detail .pa-cta-card { padding: 96px; }
}
.pa-detail .pa-cta-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.1), transparent);
    opacity: 0.3;
    z-index: 0;
}
.pa-detail .pa-cta-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr;
    gap: 64px;
    align-items: center;
}
@media (min-width: 1024px) {
    .pa-detail .pa-cta-grid { grid-template-columns: 1fr 1fr; gap: 96px; }
}
.pa-detail .pa-cta-card h2 {
    font-size: 40px;
    line-height: 1.3;
    color: var(--pa-on-surface);
    margin: 0 0 32px 0;
    font-weight: 600;
}
.pa-detail .pa-cta-card h2 .gold {
    color: rgba(212, 175, 55, 0.9);
}
.pa-detail .pa-cta-card p {
    font-size: 18px;
    color: var(--pa-on-surface-variant);
    margin: 0 0 48px 0;
    opacity: 0.8;
    line-height: 1.7;
}
.pa-detail .pa-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.pa-detail .pa-form {
    background: rgba(11, 14, 15, 0.8);
    padding: 40px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 8px;
}
@media (min-width: 768px) {
    .pa-detail .pa-form { backdrop-filter: blur(16px); }
}
.pa-detail .pa-form-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 24px;
}
@media (min-width: 640px) {
    .pa-detail .pa-form-row { grid-template-columns: 1fr 1fr; }
}
.pa-detail .pa-form label {
    display: block;
    font-size: 9px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--pa-gold);
    margin-bottom: 8px;
    opacity: 0.6;
}
.pa-detail .pa-form input,
.pa-detail .pa-form select,
.pa-detail .pa-form textarea {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--pa-on-surface);
    font-size: 14px;
    padding: 8px 0;
    font-family: inherit;
    transition: border-color 0.2s ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
/* select 下拉箭头（深色主题原生箭头不可见，用 SVG data URI 补回） */
.pa-detail .pa-form select {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23d4af37' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 4px center;
    background-size: 12px 8px;
    padding-right: 24px;
    cursor: pointer;
}
.pa-detail .pa-form input:focus,
.pa-detail .pa-form select:focus,
.pa-detail .pa-form textarea:focus {
    outline: none;
    border-bottom-color: var(--pa-gold);
}
.pa-detail .pa-form input::placeholder,
.pa-detail .pa-form textarea::placeholder {
    color: var(--pa-on-surface-variant);
    opacity: 0.5;
}
/* textarea 单独样式：允许垂直调整高度，最小高度保证可读 */
.pa-detail .pa-form textarea {
    min-height: 84px;
    resize: vertical;
    line-height: 1.6;
    font-family: inherit;
}
.pa-detail .pa-form textarea:focus {
    border-bottom-color: var(--pa-gold);
}
.pa-detail .pa-form select option {
    background: var(--pa-surface);
    color: var(--pa-on-surface);
}
.pa-detail .pa-form .submit-btn {
    width: 100%;
    background: var(--pa-gold);
    color: #000;
    border: none;
    padding: 16px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    cursor: pointer;
    margin-top: 16px;
    transition: background 0.2s ease;
    font-family: inherit;
}
.pa-detail .pa-form .submit-btn:hover { background: #fff; }
.pa-detail .pa-form .hp-field {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* === 无障碍与响应式微调 === */
.pa-detail a:focus-visible,
.pa-detail button:focus-visible,
.pa-detail summary:focus-visible {
    outline: 2px solid var(--pa-gold);
    outline-offset: 2px;
}
@media (max-width: 640px) {
    .pa-detail .pa-cta-card h2 { font-size: 28px; }
    .pa-detail .pa-form { padding: 24px; }
    .pa-detail section { padding-top: 48px; padding-bottom: 48px; }
    .pa-detail .pa-hero { min-height: 480px; }
}
