/* ============================================================
   CliniVoyage 签证页（visa-documentation-zh, post 30）页面样式
   由 page-zh.php 按页加载 — 内容字段不再包含 CSS
   注意：.site-header 与 hero 样式由模板/组件提供，不在此文件
   ============================================================ */
.section{padding:30px 0 0}

.section--parch{background:var(--paper)}

.kicker{color:var(--gold2);letter-spacing:3px;text-transform:uppercase;font-size:19px;font-weight:600;display:block;margin-bottom:12px}

h2.sec-title{font-family:var(--serif);font-weight:600;font-size:clamp(26px,2.8vw,34px);color:var(--navy);line-height:1.25;margin-bottom:10px}

h3.sec-sub{font-family:var(--serif);font-weight:600;font-size:19px;color:var(--navy);line-height:1.3;margin:34px 0 12px}

.head-rule{width:44px;height:2px;background:var(--gold);margin:14px 0 26px}

.cv-page .sec-lead{font-size:19px!important;color:var(--body);max-width:none;text-align:justify;line-height:33px;margin-bottom:28px}

.prose p{font-size:19px;color:var(--body);text-align:justify;line-height:33px;margin-bottom:18px}

.prose p strong{color:var(--navy);font-weight:600}

.ref{white-space:nowrap}.ref a{color:var(--gold2);font-size:.72em;font-family:Georgia,serif;margin:0 1px;text-decoration:none}.ref a:hover{text-decoration:underline}

.ref:hover{color:var(--goldink)}



.fig-row{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:26px 0 30px;align-items:center}

.fig-row .fig-text p{font-size:19px;color:var(--body);text-align:justify;line-height:33px;margin-bottom:0}



.fig-slot{border:none;border-radius:8px;background:transparent;padding:0;overflow:hidden;min-height:0}
.fig-slot img{width:100%;height:auto;display:block;border-radius:8px}

.fig-slot .fig-tag{display:block;padding:64px 20px;color:var(--goldink);font-size:17px;letter-spacing:2px}

.fig-cap{font-size:15px;color:var(--mut);text-align:center;padding:10px 0 2px;line-height:1.6}



.tbl-wrap{overflow-x:auto;margin:18px 0 8px}

table.vtbl{width:100%;table-layout:fixed;border-collapse:collapse;background:#fff;min-width:640px}

table.vtbl col.c-ctry{width:60%}

table.vtbl col.c-type{width:20%}

table.vtbl col.c-exp{width:20%}

table.vtbl th{background:var(--navy);color:#fff;font-size:19px;font-weight:600;text-align:left;padding:13px 18px;border:1px solid var(--navy2);letter-spacing:.4px}

table.vtbl td{font-size:19px;color:var(--body);line-height:1.6;padding:11px 18px;border:1px solid #EAE3D4;vertical-align:top}

table.vtbl tr:nth-child(even) td{background:#F8F4EA}

table.vtbl tr:hover td{background:#F1E9D6}

.tbl-note{font-size:17px!important;color:var(--mut);margin:6px 0 34px;line-height:1.6}



.faq-list{margin-top:8px}

.faq-item{border:1px solid #EAE3D4;border-left:3px solid var(--gold);background:#fff;border-radius:6px;margin-bottom:14px;overflow:hidden}

.faq-item summary{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--navy);line-height:1.5;padding:18px 22px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px}

.faq-item summary::-webkit-details-marker{display:none}

.faq-item summary::after{content:"＋";color:var(--gold2);font-size:20px;font-weight:600;flex-shrink:0;transition:transform .2s}

.faq-item[open] summary::after{transform:rotate(45deg)}

.faq-item .faq-body{padding:0 22px 20px}

.faq-item .faq-body p{font-size:19px;color:var(--body);line-height:33px;text-align:justify;margin-bottom:12px}

.faq-item .faq-body p:last-child{margin-bottom:0}



.notes{background:transparent;border:none;border-radius:0;padding:30px 32px 0 12px;margin-top:10px;margin-bottom:0}

.notes h3{font-family:var(--serif);font-size:21px;font-weight:600;color:var(--navy);margin-bottom:16px}

.notes ol{list-style:none;counter-reset:note;padding-left:14px;margin-left:0;margin-bottom:10px}

.notes ol li{counter-increment:note;font-size:15px;color:var(--body);line-height:1.7;padding:8px 0 8px 34px;position:relative;border-bottom:1px dashed #EDE6D6;text-align:justify}

.notes ol li:last-child{border-bottom:none;margin-bottom:0}

.notes ol li::before{content:counter(note);position:absolute;left:0;top:9px;width:24px;height:24px;border-radius:50%;background:var(--gold);color:var(--navy);font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center}

.notes a{color:var(--gold2);text-decoration:underline;word-break:break-all}

.notes a:hover{color:var(--goldink)}

.notes .note-meta{font-size:14px;color:var(--goldink);margin-top:14px}



@media(max-width:820px){

  .section{padding:30px 0 0}

  .container{padding:0 18px}

  .prose p,.fig-row .fig-text p,.faq-item .faq-body p{font-size:17px;line-height:30px}
  .faq-item summary{font-size:17px}

  .cv-page .sec-lead{font-size:17px!important;line-height:30px!important}

  table.vtbl th{font-size:15.5px;padding:10px 12px}

  table.vtbl td{font-size:16px;padding:9px 12px}

  .fig-row{grid-template-columns:1fr}

  .fig-slot{min-height:200px}

  .fig-slot .fig-tag{padding:44px 16px;font-size:15px}

  .notes{padding:22px 18px 0}

  .notes ol li{font-size:14px}

}

/* 附注底部到 CTA 零间距（仅本页生效） */
.cv-page{padding-top:0;padding-bottom:0}

/* FAQ 板块底部留白 30px（由下一板块 padding-top 提供） */
.faq-item:last-child{margin-bottom:0}

/* Hero 容器与正文容器对齐（正文 main 1200px + 双层 24px padding = 1152px 文字区） */
.hero .container{max-width:1152px}

.fig-text p + p{margin-top:18px}
