:root{--paper:#0a0a0c;--paper-2:#18181c;--ink:#faf8f5;--ink-soft:#d4d2ce;--ink-faint:#9a9894;--rule:rgba(255,255,255,0.15);--gold:#d4a574;--gold-hover:#e8be90}
.header-name{font-style:italic}
.main{padding-top:80px}
.jx{max-width:1200px;margin:0 auto;padding:1.6rem 1.6rem 3rem;font-family:'Inter',sans-serif}
.jx-grain{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:0.04;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.jx-eyebrow{display:flex;align-items:center;justify-content:center;gap:0.8rem;font-family:'Inter',sans-serif;font-size:0.64rem;font-weight:600;letter-spacing:0.34em;text-transform:uppercase;color:var(--gold);margin-bottom:0.7rem}
.jx-eyebrow::before,.jx-eyebrow::after{content:"";height:1px;width:2.2rem;background:var(--gold);opacity:0.6}
.jx-masthead{text-align:center;border-top:3px double var(--ink);border-bottom:3px double var(--ink);padding:1.1rem 0 0.9rem}
.jx-title{font-family:'Playfair Display',serif;font-weight:800;font-size:clamp(2.7rem,8.5vw,6.4rem);line-height:0.92;letter-spacing:-0.01em;margin:0;color:var(--ink)}
.jx-sub{font-family:'Inter',sans-serif;font-size:0.74rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--ink-soft);margin:0.6rem 0 0}
.jx-dateline{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-family:'Inter',sans-serif;font-size:0.7rem;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-soft);padding:0.55rem 0.1rem;border-bottom:1px solid var(--rule)}
.jx-dateline b{color:var(--ink);font-weight:700}
.jx-ticker{position:relative;background:#18181c;color:var(--ink);overflow:hidden;display:flex;align-items:stretch;height:1.95rem;max-width:100%}
.jx-ticker-label{flex:0 0 auto;background:var(--gold);color:var(--paper);font-family:'Inter',sans-serif;font-size:0.66rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;display:flex;align-items:center;padding:0 0.9rem;white-space:nowrap}
.jx-ticker-wrap{position:relative;overflow:hidden;flex:1;min-width:0}
.jx-ticker-track{position:absolute;left:0;top:0;height:100%;display:inline-flex;align-items:center;gap:2.2rem;white-space:nowrap;font-family:'Inter',sans-serif;font-size:0.72rem;letter-spacing:0.04em;color:rgba(250,248,245,0.72)}
.jx-ticker-track b{color:var(--ink);font-weight:600}
.jx-ticker-track i{font-style:normal;color:var(--gold);margin-right:0.5rem}
.jx-grid{display:grid;grid-template-columns:2fr 1fr;gap:0 1.8rem;margin-top:1.4rem;min-width:0}
.jx-lead{min-width:0;overflow-wrap:break-word;padding:0 1.8rem 0 0;border-right:1px solid var(--rule)}
.jx-lead-kicker{font-family:'Inter',sans-serif;font-size:0.7rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:0.6rem}
.jx-lead-head{font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(1.8rem,3.4vw,2.8rem);line-height:1.05;letter-spacing:-0.01em;margin:0 0 0.8rem}
.jx-lead-head a{color:var(--ink);text-decoration:none;background-image:linear-gradient(var(--ink),var(--ink));background-size:0% 2px;background-position:0 100%;background-repeat:no-repeat;transition:background-size 0.4s cubic-bezier(0.16,1,0.3,1)}
.jx-lead-head a:hover{background-size:100% 2px}
.jx-lead-fig{position:relative;margin:0 0 0.9rem;aspect-ratio:16/9;overflow:hidden;background:var(--paper-2);border:1px solid var(--rule)}
.jx-lead-fig img{width:100%;height:100%;object-fit:cover;display:block}
.jx-lead-fig.is-empty{display:none}
.jx-lead-fig figcaption{position:absolute;bottom:0;left:0;right:0;font-family:'Inter',sans-serif;font-size:0.62rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-soft);background:rgba(10,10,12,0.82);padding:0.3rem 0.5rem}
.jx-lead-stand{font-size:1.02rem;line-height:1.6;color:var(--ink-soft);margin:0 0 0.8rem}
.jx-lead-more{display:inline-block;font-family:'Inter',sans-serif;font-size:0.74rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);text-decoration:none}
.jx-side{min-width:0;overflow-wrap:break-word}
.jx-side-head{font-family:'Inter',sans-serif;font-size:0.72rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--ink);margin:0 0 0.4rem;display:flex;align-items:center;gap:0.6rem}
.jx-side-head::after{content:"";flex:1;height:2px;background:var(--ink)}
.jx-page{margin-top:1.9rem;padding-top:1.2rem;border-top:3px double var(--ink)}
.jx-page--edu{--sec:#6aa8c4}
.jx-page--com{--sec:#c8c8cc}
.jx-page--mus{--sec:#c48898}
.jx-page--uni{--sec:#d4a574}
.jx-page-head{font-family:'Playfair Display',serif;font-weight:800;font-size:clamp(1.4rem,3vw,2.05rem);color:var(--sec,var(--ink));margin:0 0 1rem;letter-spacing:-0.01em;display:flex;align-items:center;gap:0.9rem}
.jx-page-head small{font-family:'Inter',sans-serif;font-size:0.62rem;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--sec,var(--gold))}
.jx-page-head::after{content:"";flex:1;height:2px;background:var(--sec,var(--ink));opacity:0.5}
.jx-page-desc{font-family:'Inter',sans-serif;font-size:0.92rem;line-height:1.5;color:var(--ink-soft);margin:-0.3rem 0 1.1rem;max-width:64ch}
.jx-page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:0 1.7rem}
.jx-empty{font-family:'Inter',sans-serif;font-size:0.8rem;color:var(--ink-faint);padding:0.6rem 0;margin:0;grid-column:1/-1}
.jx-art-kicker{font-family:'Inter',sans-serif;font-size:0.6rem;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:0.2rem}
.jx-art-head{font-family:'Playfair Display',serif;font-weight:600;font-size:1.04rem;line-height:1.2;margin:0;color:var(--ink);transition:color 0.3s ease}
.jx-item:hover .jx-art-head{color:var(--gold)}
.jx-art-date{display:block;font-family:'Inter',sans-serif;font-size:0.6rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-top:0.25rem}
.jx-art-sum{font-size:0.84rem;line-height:1.45;color:var(--ink-soft);margin:0.25rem 0 0}
.jx-item{display:flex;gap:0.75rem;align-items:flex-start;text-decoration:none;color:inherit;padding:0.6rem 0;border-bottom:1px dotted var(--rule)}
.jx-item-thumb{flex:0 0 48px;width:48px;height:62px;object-fit:cover;background:var(--paper-2);border:1px solid var(--rule)}
.jx-item-body{min-width:0}
.jx-item-meta{font-family:'Inter',sans-serif;font-size:0.64rem;letter-spacing:0.05em;text-transform:uppercase;color:var(--ink-faint);margin:0.22rem 0 0}
.jx-item-stars{font-size:0.72rem;letter-spacing:0.1em;color:var(--gold);margin:0.18rem 0 0}
.jx-foot{margin-top:2rem;padding-top:1rem;border-top:3px double var(--ink);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-family:'Inter',sans-serif;font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-soft)}
.jx-foot a{color:var(--ink);text-decoration:none}
.jx-foot a:hover{color:var(--gold)}
.jx-foot nav{display:flex;gap:1.1rem;flex-wrap:wrap}
.footer{display:none}
.reveal{opacity:1;transform:none;transition:opacity 0.7s cubic-bezier(0.16,1,0.3,1),transform 0.7s cubic-bezier(0.16,1,0.3,1)}
.js .reveal{opacity:0;transform:translateY(16px)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:no-preference){.js .jx-ticker-track{animation:jxTick 48s linear infinite}}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none}}
@keyframes jxTick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:820px){
.jx-grid{grid-template-columns:1fr}
.jx-lead{padding:0 0 1.2rem;border-right:none;border-bottom:1px solid var(--rule);margin-bottom:1.2rem}
.jx-title{font-size:clamp(2.4rem,11vw,3.6rem)}
.jx-page-grid{grid-template-columns:1fr}
}
