:root {
  --pnb-gold: #b48a45;
  --pnb-gold-dark: #8c6630;
  --pnb-ink: #29251f;
  --pnb-muted: #81786c;
  --pnb-cream: #f7f2e9;
  --pnb-line: rgba(180, 138, 69, .25);
  --pnb-shadow: 0 18px 50px rgba(51, 42, 30, .10);
}

.pnb-page { padding-bottom: 48px; }
.pnb-breadcrumb { margin: 15px 0 26px; background: transparent; padding-left: 0; font-size: 13px; }
.pnb-breadcrumb > li + li:before { color: #b8aa98; }
.pnb-breadcrumb a { color: #8a7a66; }

.pnb-page-header { text-align: center; padding: 38px 15px 46px; }
.pnb-eyebrow { display: inline-block; margin-bottom: 12px; color: var(--pnb-gold); font-size: 11px; letter-spacing: .24em; font-weight: 700; }
.pnb-page-header h1, .pnb-article-header h1 { margin: 0; color: var(--pnb-ink); font-family: Georgia, "Times New Roman", "Noto Serif TC", serif; font-weight: 500; }
.pnb-page-header h1 { font-size: clamp(30px, 5vw, 52px); }
.pnb-page-header p { margin: 14px 0 0; color: var(--pnb-muted); letter-spacing: .08em; }

.pnb-news-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px; }
.pnb-card { position: relative; overflow: hidden; background: #fff; border: 1px solid rgba(180,138,69,.13); border-radius: 20px; box-shadow: 0 10px 35px rgba(45, 36, 25, .07); transition: transform .45s ease, box-shadow .45s ease; }
.pnb-card:hover { transform: translateY(-7px); box-shadow: var(--pnb-shadow); }
.pnb-standard { display: flex; flex-direction: column; }
.pnb-standard .pnb-card-content { display: flex; flex: 1 1 auto; flex-direction: column; }
.pnb-standard .pnb-read-more { margin-top: auto; padding-top: 24px; }
.pnb-featured { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(320px, .85fr); min-height: 470px; }
.pnb-cover-link { display: block; overflow: hidden; background: var(--pnb-cream); }
.pnb-featured .pnb-cover-link { min-height: 100%; }
.pnb-standard .pnb-cover-link { min-height: 0; height: auto; }
.pnb-standard .pnb-cover { height: auto; min-height: 0; aspect-ratio: 4 / 3; }
.pnb-cover { position: relative; width: 100%; height: 100%; min-height: 260px; overflow: hidden; background: linear-gradient(135deg, #eee3d1, #faf7f1); }
.pnb-cover img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s cubic-bezier(.2,.7,.2,1); }
.pnb-card:hover .pnb-cover img { transform: scale(1.055); }
.pnb-cover-placeholder { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: rgba(180,138,69,.45); font-family: Georgia, serif; font-size: 28px; letter-spacing: .18em; }
.pnb-card-content { position: relative; padding: 28px 30px 30px; }
.pnb-featured .pnb-card-content { display: flex; flex-direction: column; justify-content: center; padding: 48px; }
.pnb-meta-row { display: flex; align-items: center; gap: 12px; margin-bottom: 17px; color: var(--pnb-muted); font-size: 12px; }
.pnb-badge { display: inline-flex; align-items: center; min-height: 24px; padding: 4px 10px; border-radius: 999px; background: var(--pnb-gold); color: #fff; font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.pnb-card h2 { margin: 0 0 15px; font-size: 23px; line-height: 1.42; font-weight: 600; }
.pnb-featured h2 { font-size: clamp(28px, 3.2vw, 42px); }
.pnb-card h2 a { color: var(--pnb-ink); }
.pnb-card h2 a:hover { color: var(--pnb-gold-dark); }
.pnb-summary { color: #6f675e; line-height: 1.9; font-size: 15px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.pnb-featured .pnb-summary { -webkit-line-clamp: 4; }
.pnb-read-more { position: relative; display: inline-flex; align-items: center; gap: 10px; align-self: flex-start; margin-top: 24px; color: var(--pnb-gold-dark); font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.pnb-read-more:after { content: ""; position: absolute; left: 0; right: 100%; bottom: -5px; height: 1px; background: var(--pnb-gold); transition: right .35s ease; }
.pnb-read-more:hover:after { right: 0; }

.pnb-pagination-wrap { display: flex; justify-content: space-between; align-items: center; margin-top: 38px; gap: 20px; }
.pnb-pagination .pagination { margin: 0; }
.pnb-pagination .pagination > li > a, .pnb-pagination .pagination > li > span { color: var(--pnb-gold-dark); border-color: #eadfcf; }
.pnb-pagination .pagination > .active > span { background: var(--pnb-gold); border-color: var(--pnb-gold); color: #fff; }
.pnb-results { color: var(--pnb-muted); font-size: 13px; }
.pnb-empty { padding: 50px; text-align: center; border: 1px dashed var(--pnb-line); border-radius: 16px; color: var(--pnb-muted); }

.pnb-article-shell { max-width: 920px; margin: 0 auto; }
.pnb-article-header { text-align: center; padding: 35px 20px 38px; }
.pnb-article-header h1 { font-size: clamp(31px, 5vw, 54px); line-height: 1.35; }
.pnb-article-meta { display: flex; justify-content: center; gap: 16px; margin-top: 18px; color: var(--pnb-muted); font-size: 13px; }
.pnb-article-meta > * + *:before { content: "•"; margin-right: 16px; color: var(--pnb-gold); }
.pnb-article-hero { margin: 0 0 38px; border-radius: 22px; overflow: hidden; box-shadow: var(--pnb-shadow); }
.pnb-article-hero img { display: block; width: 100%; max-height: 650px; object-fit: cover; }
.pnb-article-body { color: #403b35; font-size: 17px; line-height: 2; }
.pnb-article-body > *:first-child { margin-top: 0; }
.pnb-article-body h2, .pnb-article-body h3, .pnb-article-body h4 { color: var(--pnb-ink); line-height: 1.45; margin-top: 1.8em; font-family: Georgia, "Noto Serif TC", serif; }
.pnb-article-body img { display: block; max-width: 100%; height: auto !important; margin: 30px auto; border-radius: 16px; box-shadow: 0 12px 35px rgba(45,36,25,.10); }
.pnb-article-body table { width: 100% !important; }
.pnb-article-body blockquote { margin: 30px 0; padding: 20px 26px; border-left: 3px solid var(--pnb-gold); background: var(--pnb-cream); color: #5e554b; }

.pnb-share { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 45px; padding: 22px 0; border-top: 1px solid var(--pnb-line); border-bottom: 1px solid var(--pnb-line); }
.pnb-share > span { margin-right: 8px; color: var(--pnb-ink); font-weight: 700; }
.pnb-share a, .pnb-share button { border: 1px solid #dfd1bd; background: #fff; color: #6e5c43; border-radius: 999px; padding: 8px 14px; font-size: 13px; transition: .25s ease; }
.pnb-share a:hover, .pnb-share button:hover { border-color: var(--pnb-gold); background: var(--pnb-gold); color: #fff; }
.pnb-author-card { display: flex; align-items: center; gap: 18px; margin-top: 35px; padding: 26px; background: var(--pnb-cream); border-radius: 18px; }
.pnb-author-mark { flex: 0 0 56px; width: 56px; height: 56px; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--pnb-gold); color: #fff; font-family: Georgia, serif; font-size: 25px; }
.pnb-author-card strong { color: var(--pnb-ink); font-size: 17px; }
.pnb-author-card p { margin: 5px 0 0; color: var(--pnb-muted); }

.pnb-reveal { opacity: 0; transform: translateY(28px); transition: opacity .75s ease, transform .75s cubic-bezier(.22,.61,.36,1); }
.pnb-reveal.pnb-visible { opacity: 1; transform: none; }
.pnb-standard:nth-child(even).pnb-reveal { transform: translate(-26px, 28px); }
.pnb-standard:nth-child(odd).pnb-reveal { transform: translate(26px, 28px); }
.pnb-standard.pnb-visible { transform: none; }

@media (max-width: 991px) {
  .pnb-featured { grid-template-columns: 1fr; min-height: 0; }
  .pnb-featured .pnb-cover { min-height: 420px; }
  .pnb-featured .pnb-card-content { padding: 34px; }
}

@media (max-width: 767px) {
  .pnb-page { padding-left: 8px; padding-right: 8px; }
  .pnb-page-header { padding: 25px 8px 30px; }
  .pnb-news-layout { grid-template-columns: 1fr; gap: 22px; }
  .pnb-featured { grid-column: auto; }
  .pnb-featured .pnb-cover { min-height: 280px; }
  .pnb-card { border-radius: 16px; }
  .pnb-card-content, .pnb-featured .pnb-card-content { padding: 23px 22px 25px; }
  .pnb-card h2, .pnb-featured h2 { font-size: 23px; }
  .pnb-summary { font-size: 14px; line-height: 1.8; -webkit-line-clamp: 3; }
  .pnb-pagination-wrap { flex-direction: column; align-items: flex-start; }
  .pnb-article-header { padding: 25px 6px 30px; }
  .pnb-article-header h1 { font-size: 30px; }
  .pnb-article-meta { flex-wrap: wrap; gap: 8px 12px; }
  .pnb-article-body { font-size: 16px; line-height: 1.9; }
  .pnb-article-hero { border-radius: 15px; margin-bottom: 28px; }
  .pnb-share { align-items: flex-start; }
  .pnb-share > span { width: 100%; margin-bottom: 5px; }
  .pnb-author-card { align-items: flex-start; padding: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .pnb-reveal, .pnb-cover img, .pnb-card { transition: none !important; transform: none !important; opacity: 1 !important; }
}

/* v1.0.2 configurable newsroom author */
.pnb-author-image{width:52px;height:52px;flex:0 0 52px;border-radius:50%;overflow:hidden;background:#fff;border:1px solid rgba(172,128,51,.25)}
.pnb-author-image img{width:100%;height:100%;object-fit:cover;display:block}
