/* 高階・雜誌排版：超大明體標題、直式封面照、照片大小錯開、內文雙欄、首字放大。 */
.s-magazine { --bg: #f4f1ec; --bg2: #ebe6de; --fg: #1a1716; --muted: #6f6760; --line: #cfc6ba; --accent: #b04a2f; --on-accent: #fff; --card: #fbf9f6;
  --font-head: var(--serif); --head-weight: 900; --h1: clamp(3rem, 10vw, 7.4rem); --h2: clamp(1.8rem, 4.4vw, 3rem); --wrap: 1200px; }
.s-magazine .top { background: var(--bg); border-bottom: 1px solid var(--fg); }
.s-magazine .brand b { letter-spacing: .3em; font-size: 1rem; }
.hero-mag { border-bottom: 1px solid var(--fg); }
.mag-in { display: grid; gap: 28px; padding-block: clamp(32px, 6vw, 72px); }
@media (min-width: 900px) { .mag-in { grid-template-columns: 1.15fr .85fr; align-items: end; } }
.mag-txt .hero-en { color: var(--accent); font-weight: 700; }
.hero-mag h1 { line-height: 1.02; letter-spacing: -.01em; }
.hero-mag .hero-lede { font-size: 1.2rem; border-top: 1px solid var(--fg); padding-top: 18px; margin-top: 26px; }
.mag-cover { margin: 0; position: relative; }
.mag-cover img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.mag-cover figcaption { position: absolute; left: -12px; bottom: 24px; background: var(--accent); color: #fff; padding: 6px 14px; font-size: .85rem; letter-spacing: .2em; }
.s-magazine .sec { border-bottom: 1px solid var(--line); }
.s-magazine .sec-h { display: flex; align-items: baseline; gap: 18px; border-bottom: 1px solid var(--fg); padding-bottom: 12px; }
.s-magazine .sec-h::after { content: "／"; color: var(--accent); }
/* 照片：大小錯開的拼貼 */
.photos-mag .pics { grid-template-columns: repeat(6, 1fr); grid-auto-flow: dense; gap: 16px; }
.photos-mag .pic { grid-column: span 3; }
.photos-mag .pic1 { grid-column: span 4; grid-row: span 2; }
.photos-mag .pic2 { grid-column: span 2; }
.photos-mag .pic3 { grid-column: span 2; }
.photos-mag .pic4 { grid-column: span 3; }
.photos-mag .pic1 img { aspect-ratio: 4 / 5; height: 100%; }
@media (max-width: 700px) { .photos-mag .pics { grid-template-columns: 1fr 1fr; } .photos-mag .pic, .photos-mag .pic2, .photos-mag .pic3, .photos-mag .pic4 { grid-column: span 1; } .photos-mag .pic1 { grid-column: span 2; grid-row: auto; } }
.s-magazine .pic { border-radius: 0; background: none; }
.s-magazine .pic figcaption { font-family: var(--serif); font-style: italic; }
/* 內文雙欄、首字放大 */
@media (min-width: 860px) { .s-magazine .about { columns: 2; column-gap: 48px; max-width: none; } }
.s-magazine .about::first-letter { float: left; font: 900 3.6em/0.9 var(--serif); margin: 6px 10px 0 0; color: var(--accent); }
@media (min-width: 860px) { .s-magazine .sec-items .wrap { display: grid; grid-template-columns: 1fr 2fr; gap: 48px; } .s-magazine .sec-items .sec-h { grid-row: span 9; align-self: start; flex-direction: column; border: 0; } }
.s-magazine .menu { max-width: none; }
.s-magazine .menu li { border-bottom: 1px solid var(--line); padding: 14px 0; }
.s-magazine .menu i { border: 0; }
.s-magazine .menu .price { font-family: var(--serif); font-weight: 900; color: var(--accent); }
.s-magazine .person { background: none; border: 0; border-top: 3px solid var(--fg); border-radius: 0; padding: 18px 0 0; }
.s-magazine .person .ini { display: none; }
