@import url('./journal-blocks.css');
.editorial-page .wrap { width: min(1200px,calc(100% - 96px)); }
.editorial-page #content:has(.has-block-content) { width:100%; }
.has-block-content .article-hero { max-width:1200px; margin:0 auto; padding-inline:24px; }
.article-block-layout { padding-block:48px; }
.article-block-layout > .article-aside,.article-block-body > .article-actions { width:min(760px,calc(100% - 48px)); margin:0 auto 32px; }
.article-block-layout > .article-aside { display:flex; flex-wrap:wrap; gap:8px 24px; }
.article-block-layout > .article-aside[hidden] { display:none; }
.article-block-layout .jb-section { scroll-margin-top:32px; }
@media(max-width:807px) { .article-block-body .jb-section { padding-inline:24px; } }
.editorial-page img { display: block; max-width: 100%; }
.editorial-page figure { margin: 0; }
.editorial-masthead { padding-top: 32px; }
.editorial-kicker,.editorial-edition { display:flex; justify-content:space-between; gap:24px; font-size:10px; letter-spacing:2px; color:var(--muted); }
.editorial-title { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.editorial-title h1 { font-weight:400; font-size:clamp(64px,8.5vw,120px); line-height:1.1; letter-spacing:-4px; margin:24px 0; }
.editorial-title i { color:var(--olive); }
.editorial-title p { border-left:1px solid var(--line); padding-left:24px; color:var(--muted); font-size:13px; }
.editorial-edition { border-block:1px solid var(--line); padding:16px 0; }
.editorial-edition a { letter-spacing:0; color:var(--ink); }
.journal-feature { display:grid; grid-template-columns:1.3fr 1fr; gap:64px; align-items:center; padding-block:48px 64px; }
.journal-feature figure { position:relative; }
.journal-feature img { width:100%; height:560px; object-fit:cover; }
.journal-feature figcaption { display:flex; justify-content:space-between; padding-top:12px; font-size:10px; letter-spacing:1.4px; }
.feature-copy h2 { font:400 clamp(34px,4vw,52px)/1.5 "Noto Serif Thai",serif; letter-spacing:-1px; margin:24px 0; }
.feature-copy p { color:var(--muted); margin-bottom:32px; }
.feature-copy .en { font-size:32px; color:var(--olive); font-style:italic; border-top:1px solid var(--line); padding-top:24px; margin-top:48px; }
.editorial-section { padding-block:64px; }
.editorial-section-heading { display:flex; justify-content:space-between; gap:24px; align-items:end; margin-bottom:32px; }
.editorial-section-heading h2 { font:400 34px/1.5 "Noto Serif Thai",serif; margin:12px 0 0; }
.editorial-section-heading p { color:var(--muted); font-size:13px; }
.journal-tools { display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; padding:24px 0; border-block:1px solid var(--line); margin-bottom:32px; }
.journal-tools[hidden] { display:none; }
.journal-filters { display:flex; flex-wrap:wrap; gap:8px; }
.journal-filter { border:0; border-radius:40px; padding:12px 24px; background:transparent; color:var(--olive); transition:background .2s; }
.journal-filter[aria-pressed="true"],.journal-filter:hover { background:var(--olive); color:var(--paper); }
.journal-search { display:flex; align-items:center; gap:12px; color:var(--muted); font-size:12px; }
.journal-search input { min-width:0; width:200px; font:inherit; color:var(--ink); background:transparent; border:0; border-bottom:1px solid var(--olive); padding:12px 8px; border-radius:0; }
.journal-search input:focus-visible { outline:2px solid var(--olive); outline-offset:4px; }
.journal-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.journal-card[hidden],.journal-empty[hidden] { display:none; }
.journal-card img { width:100%; aspect-ratio:4/5; object-fit:cover; transition:transform .5s; }
.journal-card .card-image { display:block; overflow:hidden; margin-bottom:24px; background:var(--line); }
.journal-card:hover img { transform:scale(1.025); }
.journal-card h3 { font:400 23px/1.6 "Noto Serif Thai",serif; margin:12px 0; }
.journal-card p { font-size:13px; color:var(--muted); }
.journal-card .card-meta { display:flex; gap:16px; font-size:10px; letter-spacing:1.4px; color:var(--muted); }
.journal-result { color:var(--muted); font-size:12px; margin:24px 0; }
.journal-empty { border-block:1px solid var(--line); padding:48px 24px; text-align:center; }
.journal-empty .en { font-size:34px; margin:0; }
.editorial-signoff { margin-top:64px; padding:64px 24px; background:color-mix(in srgb,var(--paper) 88%,var(--olive)); text-align:center; }
.editorial-signoff h2 { font:400 clamp(28px,4vw,40px)/1.6 "Noto Serif Thai",serif; margin:24px 0; }
.editorial-signoff .en { color:var(--olive); font-size:32px; font-style:italic; }
.about-opening { display:grid; grid-template-columns:1fr 1fr; gap:96px; align-items:center; padding-block:64px; }
.about-art { position:relative; padding:0 32px 48px 0; }
.about-art img { width:100%; height:580px; object-fit:cover; }
.about-art figcaption { position:absolute; right:0; bottom:0; background:var(--paper); border:1px solid var(--line); padding:24px 32px; font-size:32px; font-style:italic; line-height:1.2; }
.about-copy h2 { font:400 clamp(34px,4vw,52px)/1.5 "Noto Serif Thai",serif; margin:24px 0; }
.about-copy p { color:var(--muted); margin:24px 0; }
.about-copy .en { font-size:32px; font-style:italic; color:var(--olive); }
.about-values { display:grid; grid-template-columns:repeat(3,1fr); gap:48px; padding-block:48px; border-block:1px solid var(--line); }
.about-values .en { font-size:48px; color:var(--olive); }
.about-values h3 { font:400 23px "Noto Serif Thai",serif; }
.about-values p { color:var(--muted); font-size:13px; }
.about-faq { max-width:800px; margin:auto; padding-block:64px; }
.about-faq h2 { font:400 34px "Noto Serif Thai",serif; }
.about-faq details { border-bottom:1px solid var(--line); padding:24px 0; }
.about-faq summary { cursor:pointer; font-size:14px; }
.about-faq details p { color:var(--muted); padding-inline:24px; font-size:13px; }
.article-header { max-width:900px; margin:auto; text-align:center; padding:64px 24px 48px; }
.article-header h1 { font:400 clamp(34px,4vw,52px)/1.5 "Noto Serif Thai",serif; letter-spacing:-1px; margin:24px 0; }
.article-hero img { width:100%; height:540px; object-fit:cover; }
.article-hero figcaption { font-size:10px; color:var(--muted); padding-top:12px; }
.article-layout { display:grid; grid-template-columns:200px minmax(0,680px); gap:64px; justify-content:center; padding-block:64px; }
.article-aside { border-top:1px solid var(--line); padding-top:24px; font-size:12px; color:var(--muted); }
.article-aside a { display:block; padding-block:8px; }
.article-body p { line-height:2.1; margin:0 0 24px; }
.article-body h2 { font:400 28px/1.6 "Noto Serif Thai",serif; margin:12px 0 24px; }
.article-body section { margin-bottom:48px; scroll-margin-top:32px; }
.article-body blockquote { font:italic 400 34px/1.3 "Cormorant Garamond",serif; border-block:1px solid var(--line); padding:32px 0; margin:32px 0; color:var(--olive); }
.article-actions { display:flex; gap:24px; justify-content:space-between; align-items:center; flex-wrap:wrap; border-top:1px solid var(--line); padding-top:24px; }
.editorial-button { appearance:none; border:1px solid var(--olive); border-radius:40px; background:var(--olive); color:var(--paper); padding:12px 24px; font-size:12px; transition:transform .2s; }
.editorial-button:hover { transform:translateY(-2px); }
@media(max-width:1050px) { .journal-feature,.about-opening { gap:32px; } .journal-grid { gap:24px; } .article-layout { grid-template-columns:160px minmax(0,1fr); gap:32px; } }
@media(max-width:700px) {
 .editorial-page .wrap { width:calc(100% - 40px); }
 .editorial-kicker { font-size:8px; letter-spacing:1px; }
 .editorial-kicker span:last-child { display:none; }
 .editorial-title { display:block; }
 .editorial-title h1 { font-size:64px; letter-spacing:-2px; }
 .editorial-title p { border:0; padding:0; }
 .editorial-edition { font-size:8px; letter-spacing:1px; }
 .journal-feature,.about-opening { grid-template-columns:1fr; padding-block:32px 48px; }
 .journal-feature img { height:400px; }
 .feature-copy .en { margin-top:32px; }
 .editorial-section { padding-block:32px; }
 .editorial-section-heading { display:block; }
 .journal-grid,.about-values { grid-template-columns:1fr; gap:48px; }
 .journal-card img { aspect-ratio:4/3; }
 .journal-search { width:100%; }
 .journal-search input { flex:1; }
 .journal-filter { padding:12px 16px; }
 .about-art img { height:430px; }
 .about-values { padding-block:32px; }
 .article-header { padding-top:48px; }
 .article-hero img { height:320px; }
 .article-layout { grid-template-columns:1fr; gap:32px; padding-block:32px; }
 .article-aside { display:flex; flex-wrap:wrap; gap:8px 24px; }
 .article-aside .eyebrow { width:100%; }
 .article-body h2 { font-size:26px; }
 .editorial-signoff { padding:48px 24px; margin-top:32px; }
}
@media(prefers-reduced-motion:reduce) { .editorial-page { scroll-behavior:auto; } .journal-card img,.editorial-button,.journal-filter { transition:none; } .journal-card:hover img,.editorial-button:hover { transform:none; } }
/* Journal data: category tags, states, image decor presets (fixed classes, never raw values from DB). */
.journal-tags { display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:12px 0 0; padding:0; }
.journal-tags li { font-size:10px; letter-spacing:1px; color:var(--muted); border:1px solid var(--line); border-radius:40px; padding:4px 12px; }
.journal-tags li.is-primary { background:var(--olive); border-color:var(--olive); color:var(--paper); }
.journal-tags li.is-more { border-style:dashed; cursor:help; }
.article-header .journal-tags { justify-content:center; margin-top:24px; }
.feature-copy .journal-tags { margin-bottom:32px; }
.journal-filter-count { font-size:9px; margin-left:8px; opacity:.7; }
.journal-state { grid-column:1/-1; border-block:1px solid var(--line); padding:64px 24px; text-align:center; margin-block:32px; }
.journal-state .en { font-size:34px; line-height:1.2; font-style:italic; color:var(--olive); margin:16px 0 12px; }
.journal-state p:not(.en) { color:var(--muted); font-size:13px; margin:0 0 24px; }
.journal-state .text-link { display:inline-block; margin-left:16px; }
.journal-missing-photo { display:grid; place-items:center; aspect-ratio:4/5; width:100%; background:#eeeee3; color:var(--muted); font-size:12px; }
.journal-feature[hidden],.journal-cinema[hidden],.journal-result[hidden],.article-aside[hidden] { display:none; }
.journal-cinema .cinema-copy .cinema-title { font-size:clamp(56px,6.5vw,96px); font-style:italic; }
.journal-cinema .cinema-copy .cinema-title:empty { display:none; }
.journal-cinema .cinema-frame .journal-missing-photo { height:100%; aspect-ratio:auto; background:transparent; }
.article-lede { color:var(--muted); font-size:14px; max-width:640px; margin:0 auto; }
.article-hero img { height:auto; max-height:640px; }
.journal-photo { margin:32px 0; }
.journal-photo img { width:100%; height:auto; }
.journal-photo.has-border { background:#fff; padding:12px 12px 16px; }
.journal-photo.has-shadow { box-shadow:0 16px 32px -24px color-mix(in srgb,var(--ink) 55%,transparent); }
.journal-photo.has-tilt { transform:rotate(-1.5deg); }
.article-body section:nth-of-type(even) .journal-photo.has-tilt,.journal-gallery .journal-photo.has-tilt:nth-child(even) { transform:rotate(1.5deg); }
.journal-photo figcaption { display:flex; justify-content:space-between; align-items:baseline; gap:16px; flex-wrap:wrap; padding-top:12px; font-size:12px; color:var(--muted); }
.journal-photo figcaption>span { font:italic 18px/1.4 "Cormorant Garamond","Noto Sans Thai",serif; color:var(--ink); }
.journal-source { font-size:11px; }
.journal-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:32px 0; }
.journal-gallery .journal-photo { margin:0; }
.journal-gallery .journal-photo img { aspect-ratio:4/5; object-fit:cover; }
.journal-neighbours { display:flex; gap:32px; flex-wrap:wrap; }
.journal-next { display:grid; gap:8px; max-width:280px; }
.journal-next.is-older { text-align:right; }
.journal-next-title { font:400 18px/1.5 "Noto Serif Thai",serif; transition:color .2s; }
.journal-next:hover .journal-next-title { color:var(--olive); }
@media(max-width:700px) {
 .journal-gallery { grid-template-columns:1fr; gap:16px; }
 .journal-photo.has-tilt,.article-body section:nth-of-type(even) .journal-photo.has-tilt,.journal-gallery .journal-photo.has-tilt:nth-child(even) { transform:rotate(-1deg); }
 .article-actions { flex-direction:column; align-items:stretch; }
 .journal-neighbours { flex-direction:column; gap:24px; }
 .journal-next,.journal-next.is-older { max-width:none; text-align:left; }
 .journal-state { padding:48px 16px; }
 .journal-state .text-link { margin:16px 0 0; }
}
@media(prefers-reduced-motion:reduce) { .journal-next-title { transition:none; } }
