/* ============================================================
   editorial.css — UnveilChina magazine FEATURE template
   Long-form, image-led editorial styling for read-*.html stories.
   Pair with assets/style.css (chrome) + Newsreader/Inter fonts.
   ============================================================ */
.ed-hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.ed-hero .bg{position:absolute;inset:0}.ed-hero .bg img{width:100%;height:100%;object-fit:cover}
.ed-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,20,26,.1) 35%,rgba(20,20,26,.82))}
.ed-hero .inner{position:relative;z-index:2;max-width:900px;margin:0 auto;width:100%;padding:0 32px 60px;text-align:center}
.ed-hero .kicker{font-family:var(--sans);font-size:.8rem;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:#ff9ec0;margin-bottom:1.2rem}
.ed-hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(2.8rem,7vw,5.6rem);line-height:1.02;margin:0;color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.5)}
.ed-hero .standfirst{font-family:var(--serif);font-style:italic;font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.55;max-width:62ch;margin:1.4rem auto 0;opacity:.96}
.ed-hero .byline{font-family:var(--sans);font-size:.82rem;letter-spacing:.05em;margin-top:1.6rem;opacity:.9}
.ed-hero .byline a{color:#fff}
.ed-wrap{max-width:720px;margin:0 auto;padding:0 32px}
.ed-body{padding:64px 0}
.ed-body>p{font-family:var(--serif);font-size:1.24rem;line-height:1.85;color:var(--ink);margin:0 0 1.5rem}
.ed-body>p:first-of-type::first-letter{font-family:var(--serif);font-weight:600;float:left;font-size:4.4rem;line-height:.82;padding:.05em .12em 0 0;color:var(--accent)}
.ed-body h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.7rem,3vw,2.3rem);margin:3rem 0 1rem;line-height:1.12}
.ed-body h2 .n{font-family:var(--sans);font-size:.8rem;font-weight:700;letter-spacing:.16em;color:var(--accent);display:block;margin-bottom:.4rem;text-transform:uppercase}
.ed-body em.v{font-style:normal;font-weight:600;color:var(--ink);border-bottom:2px solid rgba(204,31,74,.3)}
.pullq{font-family:var(--serif);font-style:italic;font-size:clamp(1.7rem,3.6vw,2.5rem);line-height:1.3;color:var(--accent-ink);text-align:center;margin:3rem -20px;padding:1.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ed-figure{margin:3rem -120px;position:relative}
@media(max-width:1080px){.ed-figure{margin:3rem -32px}}
.ed-figure .ph{aspect-ratio:16/9;border-radius:4px;overflow:hidden;background:linear-gradient(135deg,#732982,#cc1f4a 70%,#ff8c00);display:flex;align-items:center;justify-content:center}
.ed-figure .ph img{width:100%;height:100%;object-fit:cover}
.ed-figure .ph .ph-cap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--serif);font-style:italic;font-size:1.3rem;opacity:.85}
.ed-figure figcaption{font-family:var(--sans);font-size:.8rem;color:var(--muted);margin-top:.6rem;text-align:center}
.addr{background:var(--sand);border:1px solid var(--line);border-radius:6px;padding:24px 28px;margin:2rem 0}
.addr h3{font-family:var(--sans);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:800;margin:0 0 1rem}
.addr dl{margin:0;display:grid;gap:.9rem}
.addr dt{font-family:var(--serif);font-weight:600;font-size:1.12rem;color:var(--ink)}
.addr dd{margin:.1rem 0 0;font-family:var(--sans);font-size:.92rem;line-height:1.5;color:var(--ink-2)}
.addr dd .meta{color:var(--muted);font-size:.82rem}
.ed-end{text-align:center;font-family:var(--sans);color:var(--muted);margin:3rem 0 1rem;letter-spacing:.3em}

/* ---- editorial polish for generated merchant (venue) pages ---- */
.m-body{font-family:var(--serif)}
.m-lead{font-size:1.32rem;line-height:1.6}
.m-long{font-size:1.14rem;line-height:1.82;color:#22222a}
.m-long>p:first-of-type::first-letter{font-family:var(--serif);font-weight:600;float:left;font-size:3.4rem;line-height:.82;padding:.05em .12em 0 0;color:var(--accent)}
.m-facts{border-radius:6px}
.m-hero h1{font-weight:600;color:#fff}

/* ---- reusable editorial components usable INSIDE any .article-body ---- */
.article-body .pullq{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.32;color:var(--accent-ink);text-align:center;margin:2.4rem 0;padding:1.4rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.article-body .addr{background:var(--sand);border:1px solid var(--line);border-radius:6px;padding:22px 26px;margin:2rem 0;font-size:1rem}
.article-body .addr h3{font-family:var(--sans);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:800;margin:0 0 .9rem}
.article-body .addr dt{font-family:var(--serif);font-weight:600;font-size:1.1rem}
.article-body .addr dd{margin:.1rem 0 .8rem;font-family:var(--sans);font-size:.92rem;color:var(--ink-2)}
