/* Freedom251 Almanac — the blog's own rules, on the directory's colour tokens (its stylesheet arrives with the borrowed bar). Stories on
   warm paper, a readable column, the site's sidebar beside it, the ad and widget slots kept steady (no layout shift). */
:root { --alm-col: 720px; }
.alm-wrap { max-width: var(--wrap, 1180px); margin: 0 auto; padding: 0 16px; }
.alm-main { padding-bottom: 28px; }
.alm-anchor, .alm-anchor > header { margin: 0; padding: 0; min-height: 0; }
.alm-head { padding: clamp(24px, 4vw, 44px) 0 clamp(14px, 2vw, 22px); }
.alm-kick { font: 700 12px/1 var(--text, sans-serif); letter-spacing: .14em; text-transform: uppercase; color: var(--free, #0b7a62); margin: 0 0 12px; }
.alm-head h1, .alm-title { font-family: var(--head, sans-serif); font-weight: 750; font-size: clamp(30px, 4.6vw, 48px); line-height: 1.12; margin: 0 0 12px; color: var(--ink, #16181d); }
.alm-lede { color: var(--soft, #575d68); font-size: 18px; max-width: 62ch; }
.alm-crumbs { font-size: 14px; color: var(--soft, #575d68); margin: 22px 0 12px; }
.alm-crumbs a { color: inherit; }
.alm-by { color: var(--soft, #575d68); font-size: 15px; margin: 0 0 18px; }
.alm-hero { margin: 0 0 8px; }
.alm-hero img { width: 100%; height: auto; border-radius: 14px; display: block; }
.alm-split { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: clamp(20px, 3vw, 36px); align-items: start; }
.alm-split--full { grid-template-columns: minmax(0, 1fr); }
@media (max-width: 960px) { .alm-split { grid-template-columns: minmax(0, 1fr); } }
.alm-side { min-width: 0; }
.alm-side .widget { background: var(--card, #fff); border: 1px solid var(--rule, #e3dfd4); border-radius: 14px; padding: 16px; margin: 0 0 18px; }
.alm-side .widget-title { font: 700 13px var(--text, sans-serif); letter-spacing: .1em; text-transform: uppercase; color: var(--soft, #575d68); margin: 0 0 10px; }
.alm-side ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.alm-side a { color: var(--ink, #16181d); text-decoration: none; }
.alm-side a:hover { text-decoration: underline; }
.alm-side ins.adsbygoogle { display: block; min-height: 250px; }

/* the story's words */
.alm-body { max-width: var(--alm-col); font-size: 18px; line-height: 1.75; color: var(--ink, #16181d); min-width: 0; }
.alm-body--page { max-width: 820px; }
.alm-body > * + * { margin-top: 1.05em; }
.alm-body h2 { font-family: var(--head, sans-serif); font-size: clamp(23px, 2.8vw, 29px); line-height: 1.2; margin-top: 1.7em; }
.alm-body h3 { font-family: var(--head, sans-serif); font-size: 21px; margin-top: 1.4em; }
.alm-body a { color: var(--navy, #1e2a44); }
.alm-body img { height: auto; border-radius: 10px; }
.alm-body figure { margin: 1.4em 0; }
.alm-body figcaption { font-size: 14px; color: var(--soft, #575d68); margin-top: 6px; }
.alm-body blockquote { margin: 1.4em 0; padding: 4px 0 4px 18px; border-left: 4px solid var(--stamp, #c8382d); color: var(--soft, #575d68); }
.alm-body pre { overflow-x: auto; background: var(--tint, #f3f1ea); padding: 14px; border-radius: 10px; font-size: 15px; }
.alm-body code { background: var(--tint, #f3f1ea); padding: 1px 5px; border-radius: 5px; font-size: .92em; }
.alm-body table { width: 100%; border-collapse: collapse; font-size: 16px; display: block; overflow-x: auto; }
.alm-body th, .alm-body td { border-bottom: 1px solid var(--rule, #e3dfd4); padding: 10px; text-align: left; vertical-align: top; }
.alm-body ul, .alm-body ol { padding-left: 1.3em; }
.alm-body li + li { margin-top: .35em; }
.entry-content ins.adsbygoogle { display: block; min-height: 250px; margin: 1.3em 0; }
@media (max-width: 480px) { .entry-content ins.adsbygoogle { min-height: 200px; } .alm-body { font-size: 17px; } }
.alm-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 2em; }
.alm-tags a { font-size: 14px; padding: 6px 11px; border-radius: 999px; border: 1px solid var(--rule-2, #d3cebf); text-decoration: none; color: var(--ink, #16181d); }
.alm-comments { margin-top: 30px; max-width: var(--alm-col); }

/* listings */
.alm-cards { list-style: none; margin: 0; padding: 0; display: grid; gap: clamp(16px, 3vw, 26px); grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); }
.alm-card a { display: block; text-decoration: none; color: var(--ink, #16181d); }
.alm-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 10px; display: block; background: var(--tint, #f3f1ea); }
.alm-sec { display: block; margin-top: 10px; font: 700 11px var(--text, sans-serif); letter-spacing: .1em; text-transform: uppercase; color: var(--free, #0b7a62); }
.alm-card b { display: block; font: 650 18px/1.3 var(--head, sans-serif); margin-top: 6px; }
.alm-card small { display: block; color: var(--soft, #575d68); margin-top: 6px; font-size: 14px; }
.alm-card a:hover b { text-decoration: underline; }
.alm-pager { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.alm-pager .page-numbers { display: inline-block; min-width: 42px; text-align: center; padding: 9px 12px; border: 1px solid var(--rule-2, #d3cebf); border-radius: 10px; text-decoration: none; color: var(--ink, #16181d); background: var(--card, #fff); }
.alm-pager .page-numbers.current { background: var(--navy, #1e2a44); color: var(--navy-ink, #fff); border-color: var(--navy, #1e2a44); }
.alm-note { background: var(--tint, #f3f1ea); border-radius: 10px; padding: 14px 16px; }

/* this theme's own bar and footer, only when the directory does not answer */
.alm-bar { background: var(--card, #fff); border-bottom: 1px solid var(--rule, #e3dfd4); }
.alm-bar .alm-wrap { display: flex; align-items: center; gap: 18px; min-height: 62px; flex-wrap: wrap; }
.alm-name { font: 800 21px var(--head, sans-serif); letter-spacing: .04em; text-decoration: none; color: var(--ink, #16181d); }
.alm-name span { color: var(--stamp, #c8382d); }
.alm-nav ul, .alm-foot ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 14px; }
.alm-foot { margin-top: 40px; background: var(--card, #fff); border-top: 1px solid var(--rule, #e3dfd4); padding: 26px 0; font-size: 15px; }
.alm-tag { font-weight: 800; letter-spacing: .12em; color: var(--stamp, #c8382d); }

/* the estate search's results, in this layout */
.ym-srch-wrap { min-width: 0; }
