/* Local reading draft: styles scoped to the new farm article. */
.censes-document { scroll-behavior: auto; }
.cense-hero { padding: 4.5rem 0 5rem; }
.cense-hero h1 { max-width: 1000px; font-size: clamp(2.7rem,6.4vw,5.7rem); line-height: 1.04; }
.cense-reading { color: #e7d6ad; font-size: .78rem; letter-spacing: .06em; }
.cense-hero .article-deck { color: #f0ede4; }
.cense-hero .article-meta span { color: #e8e8df; }
.cense-main { padding-top: 0; }
.cense-photo { margin: 2.8rem 0; background: #eeebdf; border: 1px solid #d9d4c5; }
.cense-photo img { display: block; width: 100%; height: auto; }
.cense-photo figcaption { display: grid; gap: .4rem; padding: 1.2rem 1.35rem; font: .9rem/1.5 var(--sans, system-ui,sans-serif); }
.cense-photo figcaption b { color: #173c36; font: 1.35rem/1.15 var(--serif); }
.cense-photo figcaption small { font-size: .75rem; }
.cense-photo a,.kin-tree a,.cense-sources a { text-decoration: underline; text-underline-offset: 3px; }
.cense-opening { width: min(calc(100% - 2rem),1120px); margin: -2rem auto 3rem; position: relative; z-index: 2; }
.cense-opening img { height: auto; object-fit: contain; }
.cense-gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 2.8rem 0; align-items: start; }
.cense-gallery .cense-photo { margin: 0; }
.cense-gallery .cense-photo figcaption { padding: .9rem; }
.cense-gallery .cense-photo figcaption b { font-size: 1.15rem; }
.cense-opening figcaption { background: #f4f0e5; }
.cense-photo:not(.cense-opening) img { max-height: 620px; object-fit: contain; background: #e8e5d9; }
.cense-intro { font-size: 1.55rem; color: #173c36; }
.cense-caution { font: .92rem/1.5 system-ui,sans-serif; border-left: 3px solid #8b4f3c; padding: .8rem 1rem; background: #efe6d8; }
.cense-toc { padding: 1.5rem; background: #eeebdf; font: .9rem/1.6 system-ui,sans-serif; }
.cense-toc ol { columns: 2; padding-left: 1.2rem; margin-bottom: 0; }
.cense-toc li { break-inside: avoid; padding: .2rem 0; }
.cense-refs { font: .65rem/1 system-ui,sans-serif; white-space: nowrap; margin-left: .25rem; }
.cense-refs a { margin-right: .2rem; }
.cense-map { margin: 3rem 0; padding: 1.2rem; background: #f0eddf; border: 1px solid #d4ceba; }
.cense-map h3 { margin-top: 0; }
.cense-map svg { width: 100%; height: auto; font-family: system-ui,sans-serif; }
.cense-map figcaption,.map-key { font: .83rem/1.55 system-ui,sans-serif; }
.map-key { columns: 2; padding-left: 1.2rem; }
.kin-tree { margin: 3rem 0; padding: 1.7rem; border: 1px solid #d4ceba; background: #f1eee2; font-family: system-ui,sans-serif; }
.kin-tree h3 { margin: 0 0 1rem; font: 1.8rem/1.16 var(--serif); }
.kin-note { font: .82rem/1.6 system-ui,sans-serif; color: #535d54; }
.kin-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.2rem; }
.kin-columns h4 { margin: 1rem 0; color: #173c36; font: 1.1rem/1.3 var(--serif); }
.kin-chain { list-style: none; margin: 0; padding: 0; }
.kin-chain li { position: relative; margin: 0; padding: 0 0 1.65rem; }
.kin-chain li:not(:last-child)::after { position: absolute; content: '↓'; bottom: -.05rem; left: 50%; color: #586858; font-size: 1.2rem; }
.kin-node { position: relative; padding: .85rem .8rem .8rem; background: #faf8f0; border: 1px solid #bfc6b6; border-radius: 6px; min-width: 0; }
.kin-node b { display: block; padding-right: 1.8rem; font-size: .95rem; line-height: 1.45; color: #173c36; overflow-wrap: anywhere; }
.kin-node small { display: block; margin-top: .25rem; font: .74rem/1.5 system-ui,sans-serif; }
.proof { position: absolute; top: .3rem; right: .3rem; font-size: .55rem; color: #7e4633; }
.kin-meeting { position: relative; border-top: 2px solid #7a8a70; padding-top: 1rem; }
.kin-meeting::before { position: absolute; content: ''; width: 2px; height: 1rem; background: #7a8a70; left: 50%; top: 0; }
.kin-label { text-align: center; margin: .65rem 0!important; font: .8rem/1.5 system-ui,sans-serif; color: #7e4633; }
.kin-pair,.kin-children { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
.kin-pair { position: relative; }
.kin-children { grid-template-columns: repeat(3,minmax(0,1fr)); }
.kin-children .kin-node b { padding-right: 0; font-size: .84rem; }
.kin-disputed { position: relative; display: flex; align-items: center; justify-content: center; min-height: 6rem; margin: .55rem 0; text-align: center; color: #703b29; font: 700 .85rem/1.55 system-ui,sans-serif; padding: .8rem 1.2rem; border-left: 3px dashed #8b4f3c; border-right: 3px dashed #8b4f3c; background: #ebe0cf; }
.kin-mother { margin: 1rem 0; padding: .8rem; background: #e5eadf; border: 1px solid #bfc6b6; }
.kin-mother p { margin: .6rem 0 0!important; font: .8rem/1.5 system-ui,sans-serif; }
.kin-descendants { max-width: 460px; margin: 1rem auto 0; }
.kin-spouse { display: flex; align-items: center; gap: .8rem; justify-content: center; }
.kin-spouse .kin-node { min-width: 210px; }
.kin-tree details { margin-top: 1rem; font: .8rem/1.6 system-ui,sans-serif; overflow-wrap: anywhere; }
.kin-tree summary { cursor: pointer; font-weight: 700; padding: .5rem 0; }
.kin-tree details p { margin: .7rem 0 0; }
.cense-sources { margin-top: 4rem; font: .86rem/1.7 system-ui,sans-serif; overflow-wrap: anywhere; }
.cense-sources li { margin-bottom: 1rem; }
[id] { scroll-margin-top: 6rem; }
@media (max-width: 560px) {
 .cense-gallery { grid-template-columns: 1fr; }
 .cense-hero { padding-top: 3rem; }
 .cense-hero h1 { font-size: 2.7rem; }
 .cense-toc ol,.map-key { columns: 1; }
 .kin-tree { padding: 1rem .7rem; }
 .kin-columns { gap: .5rem; }
 .kin-columns h4 { font-size: .95rem; }
 .kin-node { padding: .8rem .5rem .6rem; }
 .kin-node b { font-size: .77rem; padding-right: 1.2rem; }
 .kin-node small { font-size: .68rem; }
 .kin-children { grid-template-columns: 1fr; }
 .kin-children .kin-node { text-align: center; }
 .cense-map { padding: .6rem; }
 .cense-photo figcaption { padding: 1rem; }
}
@media print {
 .article-topbar,.article-footer,.article-participation,.cense-toc { display: none!important; }
 .cense-hero { padding: 1.3cm 1cm; color: #173c36; background: white; }
 .cense-hero .article-deck,.cense-reading,.cense-hero .article-meta span { color: #173c36; }
 .cense-hero h1 { font-size: 32pt; }
 .cense-opening { margin: 1rem auto; }
 .kin-node,.cense-photo,.kin-disputed,.kin-pair,.kin-mother { break-inside: avoid; }
 .kin-tree { padding: .7cm; }
 .article-body h2 { break-after: avoid; }
 .article-body { font-size: 11pt; line-height: 1.6; }
 .kin-tree details { display: none; }
}
