/* Original header layout, retaining the refined primary links and dropdowns. */
.site-header { --sn-font:'Noto Serif TC',serif; --sn-ink:#3e322b; --sn-gold:#ab7c37; --sn-line:#e9e3da; --sn-paper:#fcfbf9; --sn-ease:cubic-bezier(.22,1,.36,1); width:100%; max-width:1880px; min-height:200px; margin:0 auto; padding:0 20px; display:grid; grid-template-columns:auto minmax(0,1fr) 228px; column-gap:24px; align-items:center; position:relative; z-index:9500; background:transparent; border:0; box-shadow:none; }
.site-header, .site-header *, .site-header *::before, .site-header *::after { box-sizing:border-box; }
.site-header .logo { margin:0; }
.site-header .logo img { max-height:clamp(105px,calc(20vw - 144px),200px); }
.site-header .logo-text { font-size:clamp(20px,1.42vw,27.2px); }
.site-header .sn-navigation { display:contents; }
.sn-main { grid-column:2; display:flex; align-items:center; justify-content:center; gap:clamp(24px,2vw,40px); min-width:0; }
.sn-side { grid-column:3; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding-top:44px; }
.site-header .inner-header-social, .site-header .admin-entry-position { position:static; transform:none; margin:0; }
.site-header .inner-header-social { gap:12px; }
.site-header .inner-header-social button { width:36px; height:36px; padding:0; border:1px solid rgba(160,140,120,.3); border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; background:rgba(255,255,255,.65); backdrop-filter:blur(4px); box-shadow:0 4px 10px rgba(93,78,70,.1); transition:transform .3s,background .3s,box-shadow .3s; }
.site-header .inner-header-social button:hover { transform:translateY(-3px) scale(1.1); background:#fff; border-color:transparent; box-shadow:0 8px 20px rgba(95,153,97,.3); }
.site-header .inner-header-social button:hover .fa { color:#5f9961; }
.site-header .sn-inline-search { flex:0 1 224px; width:224px; min-width:196px; height:48px; display:flex; align-items:center; gap:10px; margin:0; top:0; padding:5px 5px 5px 14px; border:1px solid #e1d8cc; border-radius:12px; background:var(--sn-paper); box-shadow:0 2px 5px #3e322b04; transition:border-color 180ms ease,box-shadow 180ms ease,background 180ms ease; }
.site-header .sn-inline-search:hover { border-color:#c8b89f; }
.site-header .sn-inline-search:focus-within { border-color:var(--sn-gold); background:#fff; box-shadow:0 0 0 3px #ab7c3714; }
.sn-search-icon { flex:0 0 auto; font-size:15px; color:#9b8567; }
.site-header .sn-inline-search input[type="search"] { appearance:none; flex:1 1 auto; width:0; min-width:0; height:100%; margin:0; padding:0; border:0; border-radius:0; outline:none; background:transparent; box-shadow:none; color:var(--sn-ink); font:400 14px/1.5 var(--sn-font); }
.site-header .sn-inline-search input[type="search"]::placeholder { color:#8a7b6e; opacity:1; }
.site-header .sn-inline-search button[type="submit"] { flex:0 0 48px; width:48px; height:36px; margin:0; padding:0; position:static; border:0; border-radius:8px; background:#f0e6d6; color:#705025; box-shadow:none; font:500 13px/1.5 var(--sn-font); transform:none; transition:background 180ms ease,color 180ms ease; }
.site-header .sn-inline-search button[type="submit"]:hover { background:#e5d3b4; color:#4f381a; transform:none; }
.site-header :is(a,button,input):focus-visible { outline:2px solid var(--sn-gold); outline-offset:4px; }
.site-header .sn-inline-search input:focus-visible { outline:none; }
.site-header button { cursor:pointer; }
.site-header .fa { line-height:1; }
.sn-primary { display:flex; flex:0 0 auto; align-items:center; gap:clamp(20px,1.7vw,32px); font-family:var(--sn-font); }
.site-header .sn-primary .sn-link { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:14px 4px; min-height:48px; background:none; border:0; border-radius:0; position:relative; font:500 16px/1.5 var(--sn-font); color:var(--sn-ink); text-decoration:none; white-space:nowrap; transition:color 180ms ease; }
.sn-primary > .sn-link::after, .sn-primary > .sn-group > .sn-link::after { content:''; position:absolute; height:2px; bottom:5px; left:4px; right:4px; background:var(--sn-gold); transform:scaleX(0); transform-origin:left; transition:transform 180ms var(--sn-ease); }
.sn-primary .sn-link:is(:hover,[aria-current="page"],.is-current,[aria-expanded="true"])::after { transform:scaleX(1); }
.site-header .sn-primary .sn-link:is(:hover,[aria-current="page"],.is-current,[aria-expanded="true"]) { color:var(--sn-gold); }
.sn-chevron { color:#aa8959; font-size:13px; transition:transform 180ms ease; }
[aria-expanded="true"] > .sn-chevron { transform:rotate(180deg); }
.sn-group { position:relative; }
.sn-dropdown { position:absolute; top:100%; left:50%; width:560px; transform:translate(-50%,6px); opacity:0; visibility:hidden; pointer-events:none; padding-top:14px; transition:opacity 200ms ease,transform 220ms var(--sn-ease),visibility 220ms; z-index:2; }
.sn-group.is-open > .sn-dropdown { opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%,0); }
.sn-dropdown-inner { display:grid; grid-template-columns:1fr 1fr; gap:4px 8px; padding:16px; border:1px solid var(--sn-line); background:var(--sn-paper); border-radius:12px; box-shadow:0 16px 44px #3e322b1c,0 2px 5px #3e322b04; }
.sn-dropdown--about .sn-dropdown-inner { grid-template-rows:repeat(4,auto); grid-auto-flow:column; }
.sn-dropdown--gospel { width:470px; }
.sn-dropdown-inner a { min-height:50px; padding:12px; display:flex; align-items:center; gap:13px; border-radius:7px; font:400 14px/1.5 var(--sn-font); color:var(--sn-ink); text-decoration:none; transition:background 160ms ease,color 160ms ease; }
.sn-dropdown-inner a > .fa:first-child { width:21px; text-align:center; color:#8a7050; font-size:18px; flex:0 0 21px; }
.sn-dropdown-inner a:hover, .sn-dropdown-inner a[aria-current="page"] { color:var(--sn-gold); background:#f2ece2; }
.sn-dropdown-inner .sn-item-arrow { margin-left:auto; opacity:0; font-size:15px; transform:translateX(-3px); transition:opacity 160ms,transform 160ms; }
.sn-dropdown-inner a:hover .sn-item-arrow { opacity:1; transform:none; }
.sn-dropdown--related { width:280px; }
.sn-dropdown--related .sn-dropdown-inner { grid-template-columns:1fr; padding:12px; }
.sn-dropdown-inner .sn-external-icon { margin-left:auto; font-size:12px; color:#a18b6c; }
.sn-mobile-arrow, .sn-close-symbol { display:none; }
.sn-share-status { position:absolute; right:24px; bottom:4px; z-index:5; padding:8px 14px; border-radius:8px; color:white; background:#5d4e40; font:14px/1.5 var(--sn-font); box-shadow:0 4px 20px #3e322b16; }
.sn-share-status:empty { display:none; }
.sn-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
html.nav-overlay-open { overflow:hidden; scrollbar-gutter:stable; }
.sn-nojs { grid-column:1/-1; padding:20px; display:flex; flex-wrap:wrap; gap:18px; }
@media (min-width:769px) {
  .site-header .sn-primary .sn-link { font-size:clamp(16px,1.25vw,18px); }
  .site-header .sn-primary .sn-link, .site-header .sn-inline-search button[type="submit"] { font-weight:700; }
  .site-header .sn-dropdown-inner a, .site-header .sn-inline-search input[type="search"] { font-weight:600; }
}
@media (min-width:1280px) {
  .site-header .sn-inline-search { margin-left:24px; }
}
@media (min-width:769px) and (max-width:1399px) {
  .site-header { column-gap:16px; grid-template-columns:auto minmax(0,1fr) 204px; padding:0 16px; }
  .site-header .logo-link { gap:10px; }
  .site-header .inner-header-social { gap:6px; }
  .sn-main { gap:24px; }
  .sn-primary { gap:20px; }
  .site-header .sn-inline-search { flex-basis:208px; width:208px; }
}
@media (min-width:769px) and (max-width:1279px) {
  .site-header { grid-template-columns:1fr 204px; grid-template-rows:120px 70px; min-height:200px; }
  .site-header .logo { grid-area:1/1; }
  .site-header .logo img { max-height:110px; }
  .site-header .logo-text { font-size:24px; }
  .sn-side { grid-area:1/2; padding-top:10px; gap:12px; }
  .sn-main { grid-area:2/1/3/-1; justify-content:center; gap:32px; }
  .sn-primary { gap:clamp(20px,2.5vw,32px); }
}
@media (max-width:768px) {
  .site-header { display:block; min-height:80px; padding:0 16px; z-index:9500; }
  .site-header.is-menu-open { z-index:11000; }
  .site-header .logo img { max-height:80px; }
  .site-header .logo-text { font-size:1rem; }
  .site-header .logo-link { gap:10px; width:max-content; max-width:calc(100% - 44px); }
  .site-header .nav-toggle { display:flex; align-items:center; justify-content:center; position:fixed; top:15px; right:15px; width:44px; height:44px; padding:0; border:0; background:transparent; z-index:4; color:#5d4e46; font-size:30px; }
  .site-header .nav-toggle:hover { transform:none; }
  .nav-toggle[aria-expanded="true"] { color:#fff; }
  .nav-toggle[aria-expanded="true"] .sn-menu-symbol { display:none; }
  .nav-toggle[aria-expanded="true"] .sn-close-symbol { display:inline; }
  .site-header .sn-navigation { position:fixed; inset:0 0 0 auto; display:flex; flex-direction:column; align-items:stretch; width:250px; height:100dvh; padding:66px 14px 28px; gap:0; overflow-y:auto; overscroll-behavior:contain; background:rgba(0,0,0,.6); backdrop-filter:blur(10px); border-left:1px solid rgba(255,255,255,.2); transform:translateX(100%); visibility:hidden; pointer-events:none; transition:transform 260ms var(--sn-ease),visibility 260ms; z-index:3; }
  .is-menu-open .sn-navigation { transform:none; visibility:visible; pointer-events:auto; }
  .sn-main { display:contents; }
  .sn-primary { display:block; flex:0 0 auto; order:0; }
  .site-header .sn-primary > .sn-link, .site-header .sn-primary .sn-group > .sn-link { display:flex; align-items:center; justify-content:space-between; width:100%; padding:16px 10px; min-height:56px; color:#fff; border-bottom:1px solid rgba(255,255,255,.2); }
  .site-header .sn-primary .sn-link:is(:hover,[aria-current="page"],.is-current,[aria-expanded="true"]) { color:#e3c08b; }
  .sn-primary > .sn-link::after, .sn-primary > .sn-group > .sn-link::after { display:none; }
  .sn-mobile-arrow { display:inline; }
  .sn-dropdown, .sn-group.is-open > .sn-dropdown { position:static; display:grid; grid-template-rows:0fr; width:100%; min-width:0; padding:0; transform:none; opacity:0; transition:grid-template-rows 240ms var(--sn-ease),opacity 180ms,visibility 240ms; }
  .sn-group.is-open > .sn-dropdown { grid-template-rows:1fr; opacity:1; }
  .sn-dropdown-inner, .sn-dropdown--about .sn-dropdown-inner, .sn-dropdown--related .sn-dropdown-inner { display:flex; flex-direction:column; gap:0; min-height:0; overflow:hidden; border:0; padding:0; margin:0; border-radius:7px; background:var(--sn-paper); box-shadow:none; }
  .sn-dropdown-inner a { flex:0 0 auto; min-height:48px; padding:12px 10px; gap:9px; font-size:14px; border-radius:0; margin:0 4px; border-bottom:1px solid #e6dfd4; }
  .sn-dropdown-inner a:last-child { border-bottom:0; }
  .sn-dropdown-inner a > .fa:first-child { font-size:16px; width:18px; flex-basis:18px; }
  .sn-dropdown-inner .sn-item-arrow { opacity:1; }
  .sn-side { order:2; flex:0 0 auto; display:flex; padding:24px 0 0; gap:20px; }
  .site-header .inner-header-social { gap:6px; }
  .site-header .admin-entry-position { width:auto; }
  .site-header .admin-entry { font-size:.85rem; }
  .site-header .sn-inline-search { order:3; flex:0 0 auto; width:100%; min-width:0; height:54px; margin:22px 0 0; padding:4px 4px 4px 12px; gap:8px; }
  .site-header .sn-inline-search input[type="search"] { font-size:16px; }
  .site-header .sn-inline-search button[type="submit"] { height:44px; }
  .sn-share-status { position:fixed; bottom:20px; right:14px; max-width:236px; }
}
@media (max-width:350px) { .site-header .logo img { max-height:60px; } .site-header .logo-link { gap:6px; } .site-header .logo { padding-top:10px; } .site-header .logo-text { font-size:15px; } }
@media (prefers-reduced-motion:reduce) { .site-header *, .site-header *::before, .site-header *::after { transition:none !important; animation:none !important; } }
