/* Foto-Kodak Editorial Magazine — scoped, responsive design.
   Deliberately NO html/body background declaration: Newspaper's body background remains visible. */
.fk-site, .fk-site * { box-sizing: border-box; }
.fk-site {
  --fk-forest: #25342f; --fk-ink: #27312e; --fk-muted: #666e67;
  --fk-cream: #f6f2ec; --fk-paper: #f9f6f1; --fk-line: #dcd7cc;
  --fk-sage: #7d9083; --fk-caramel: #b57949; --fk-footer: #f2eee7;
  width: min(1600px, calc(100% - 32px)); min-height: 100vh; margin: 0 auto;
  color: var(--fk-ink); background: var(--fk-cream);
  font: 400 15px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  box-shadow: 0 18px 70px rgba(23, 31, 27, .10);
  overflow: clip; isolation: isolate;
}
.fk-site :where(h1,h2,h3,h4,h5,h6,p,figure,ul,ol) { margin-top: 0; }
.fk-site :where(h1,h2,h3,h4,h5,h6) { color: #17221f; font-family: Georgia, "Times New Roman", serif; font-weight: 400; line-height: 1.14; letter-spacing: -.034em; }
.fk-site :where(a,a:visited) { color: inherit; text-decoration: none; }
.fk-site a:hover { color: #966038; }
.fk-site img { max-width: 100%; height: auto; }
.fk-site input, .fk-site button, .fk-site select, .fk-site textarea { font: inherit; }
.fk-site :where(a,button,input,textarea,summary):focus-visible { outline: 3px solid #b27b51; outline-offset: 3px; }
.fk-site .fk-main { display:block; min-height:60vh; background:var(--fk-cream); }
.fk-site .fk-content-wrap { width:min(1440px,calc(100% - 108px)); margin-inline:auto; }
.fk-site .fk-skip { position:absolute; z-index:999; top:-100px; left:10px; background:#fff; padding:10px 15px; color:var(--fk-ink); }
.fk-site .fk-skip:focus { top:10px; }
.fk-site .fk-topline { background:#26352f; color:#e9e9df; font-size:11px; font-weight:500; letter-spacing:.05em; }
.fk-site .fk-topline-inner { max-width:1460px; margin:auto; display:flex; justify-content:space-between; align-items:center; gap:30px; padding:7px 28px; }
.fk-site .fk-topline-quote { opacity:.86; font-style:italic; letter-spacing:0; }
.fk-site .fk-header { position:relative; z-index:30; background:var(--fk-paper); border-bottom:1px solid #e2dcd2; }
.fk-site .fk-header-main { width:min(1480px,calc(100% - 62px)); min-height:97px; margin:auto; display:flex; align-items:center; gap:24px; }
.fk-site .fk-logo { display:inline-flex; flex:none; align-items:center; gap:16px; color:#101715; min-width:269px; max-width:100%; }
.fk-site .fk-logo-corners { width:23px; height:42px; flex:none; position:relative; border-left:2px solid currentColor; }
.fk-site .fk-logo-corners:before,.fk-site .fk-logo-corners:after { content:""; position:absolute; left:0; height:2px; width:12px; background:currentColor; }
.fk-site .fk-logo-corners:before { top:0; }.fk-site .fk-logo-corners:after { bottom:0; }
.fk-site .fk-logo-type { display:flex; flex-direction:column; gap:0; }
.fk-site .fk-logo-type strong { display:block; font-family:Georgia,"Times New Roman",serif; font-size:clamp(23px,2.25vw,35px); line-height:1.05; letter-spacing:-.045em; font-weight:400; white-space:nowrap; }
.fk-site .fk-logo-dash { font-size:.85em; font-weight:400; }.fk-site .fk-logo-dot { font-weight:700; }
.fk-site .fk-logo-type small { text-align:center; font-family:Georgia,serif; font-size:11px; letter-spacing:.12em; color:#62675f; line-height:1.9; }
.fk-site .fk-primary-nav { margin-left:auto; display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:clamp(10px,1.45vw,24px); }
.fk-site .fk-primary-nav a { color:#18201d; font-size:clamp(11px,.90vw,14px); font-weight:600; white-space:nowrap; padding:10px 0; }
.fk-site .fk-primary-nav a:hover { color:var(--fk-caramel); }
.fk-site .fk-utility-nav { display:flex; align-items:center; justify-content:center; gap:38px; padding:8px 28px 10px; border-top:1px solid #ebe5dc; }
.fk-site .fk-utility-nav a { font-size:12px; letter-spacing:.035em; font-weight:600; color:#4a5550; }
.fk-site .fk-utility-nav a:hover { color:#966038; }
.fk-site .fk-search-toggle,.fk-site .fk-mobile-toggle { position:relative; flex:none; }
.fk-site .fk-search-toggle summary,.fk-site .fk-mobile-toggle summary { display:flex; gap:7px; align-items:center; list-style:none; cursor:pointer; padding:8px; color:#28342f; }
.fk-site .fk-search-toggle summary::-webkit-details-marker,.fk-site .fk-mobile-toggle summary::-webkit-details-marker { display:none; }
.fk-site .fk-search-toggle form { position:absolute; top:calc(100% + 19px); right:0; width:min(370px,90vw); padding:23px; background:#fffdf9; border:1px solid var(--fk-line); box-shadow:0 12px 45px #24312d24; }
.fk-site .fk-search-toggle form label { display:block; font-weight:600; margin:0 0 9px; }
.fk-site .fk-search-form { display:flex; width:100%; }
.fk-site .fk-search-form input { min-width:0; width:100%; flex:1; color:#19251f; background:white; border:1px solid #c8c7bd; padding:10px; border-radius:0; }
.fk-site .fk-search-form button { padding:10px 15px; background:var(--fk-forest); color:white; border:0; cursor:pointer; }
.fk-site .fk-mobile-toggle { display:none; }
.fk-site .fk-button { display:inline-flex; align-items:center; gap:20px; justify-content:center; padding:13px 25px; background:var(--fk-forest); color:#fff!important; font-size:13px; font-weight:600; letter-spacing:.012em; border:1px solid var(--fk-forest); line-height:1.3; transition:background .2s, transform .2s; }
.fk-site .fk-button:hover { background:#495b50; border-color:#495b50; transform:translateY(-1px); }
.fk-site .fk-eyebrow { font-size:11px; color:#3e4943; text-transform:uppercase; font-weight:600; letter-spacing:.21em; }
/* Hero: balanced editorial masthead with an actual image, never flattened screenshot text. */
.fk-site .fk-hero { min-height:490px; display:grid; grid-template-columns:40% 60%; background:#f0ebe3; overflow:hidden; }
.fk-site .fk-hero-copy { padding:clamp(32px,4vw,70px) 5% clamp(22px,2.6vw,42px) clamp(34px,5.2vw,87px); display:flex; flex-direction:column; justify-content:center; position:relative; z-index:1; }
.fk-site .fk-hero-copy .fk-eyebrow { margin-bottom:21px; white-space:nowrap; }
.fk-site .fk-hero h1 { font-size:clamp(43px,5.25vw,87px); margin-bottom:15px; letter-spacing:-.065em; line-height:.99; color:#101715; }
.fk-site .fk-hero-lead { font:400 clamp(17px,1.55vw,24px)/1.38 Georgia,serif; color:#202b25; margin-bottom:22px; }
.fk-site .fk-hero .fk-button { align-self:flex-start; }
.fk-site .fk-hero-dashes { display:flex; gap:4px; margin-top:26px; }
.fk-site .fk-hero-dashes i { display:block; height:2px; width:27px; background:#bab6aa; }.fk-site .fk-hero-dashes i:first-child { background:#26352f; }
.fk-site .fk-hero-visual { position:relative; overflow:hidden; background:#a49a85; min-height:490px; }
.fk-site .fk-hero-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(to right,#f0ebe3 0%,rgba(240,235,227,.62) 12%,transparent 35%); pointer-events:none; }
.fk-site .fk-hero-visual img { width:100%; height:100%; display:block; object-fit:cover; object-position:center 54%; }
.fk-site .fk-hero-tag { position:absolute; z-index:2; right:5%; top:7%; color:#fff; font-size:13px; letter-spacing:.17em; line-height:1.6; font-weight:700; text-shadow:0 2px 12px #0009; padding:14px 10px 14px 18px; border-top:1px solid #fff; border-right:1px solid #fff; }
/* Editorial section headers and thematic image cards. */
.fk-site .fk-section { margin:36px auto 46px; }
.fk-site .fk-section-heading { display:flex; align-items:center; gap:24px; margin-bottom:17px; }
.fk-site .fk-section-heading h2 { margin:0; font-size:clamp(29px,2.65vw,43px); white-space:nowrap; }
.fk-site .fk-heading-rule { flex:0 0 55px; border-top:1px solid #9c9e94; }
.fk-site .fk-heading-note { margin-left:auto; color:#666f65; font-size:10px; white-space:nowrap; letter-spacing:.15em; }
.fk-site .fk-section-more { font-size:12px; white-space:nowrap; margin-left:auto; font-weight:600; }
.fk-site .fk-heading-note + .fk-section-more { margin-left:16px; }
.fk-site .fk-section-more span { padding-left:8px; font-size:17px; }
.fk-site .fk-categories-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.fk-site .fk-category-tile { display:flex; flex-direction:column; min-width:0; background:#f8f4ee; border:1px solid #e6e0d6; transition:transform .2s,box-shadow .2s; }
.fk-site .fk-category-tile:hover { transform:translateY(-3px); box-shadow:0 9px 18px #26352f11; }
.fk-site .fk-media { display:block; overflow:hidden; }
.fk-site .fk-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .3s; }
.fk-site a.fk-media:hover img,.fk-site a:hover .fk-media img { transform:scale(1.025); }
.fk-site .fk-category-image { height:clamp(124px,12vw,190px); }
.fk-site .fk-category-body { padding:14px 16px 15px; display:flex; flex-direction:column; flex:1; gap:10px; }
.fk-site .fk-category-body strong { font:400 clamp(16px,1.38vw,22px)/1.15 Georgia,serif; letter-spacing:-.035em; color:#111c17; }
.fk-site .fk-category-body small { margin-top:auto; font-size:10px; letter-spacing:.065em; text-transform:uppercase; font-weight:600; color:#677168; }
.fk-site .fk-category-body small span { padding-left:4px; }
/* Featured article: asymmetrical triptych. */
.fk-site .fk-feature-section { border-top:1px solid #e0dacf; padding-top:24px; display:grid; grid-template-columns:1.12fr .76fr .23fr; align-items:stretch; gap:25px; }
.fk-site .fk-feature-photo { position:relative; min-height:300px; background:#b6a38a; }
.fk-site .fk-feature-photo .fk-image { width:100%; height:100%; object-fit:cover; }
.fk-site .fk-photo-label { position:absolute; z-index:3; top:20px; left:18px; padding:10px 15px; background:#be8b57; color:#fff; font-size:11px; letter-spacing:.09em; font-weight:700; }
.fk-site .fk-feature-copy { padding:18px 0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.fk-site .fk-feature-label { color:#ab7041; letter-spacing:.13em; text-transform:uppercase; font-size:11px; font-weight:700; margin-bottom:15px; }
.fk-site .fk-feature-copy h2 { font-size:clamp(28px,2.75vw,43px); margin-bottom:15px; line-height:1.18; }
.fk-site .fk-feature-copy p:not(.fk-feature-label) { color:#646960; font-size:14px; line-height:1.65; margin-bottom:20px; }
.fk-site .fk-feature-aside { border-left:1px solid #e1dbd1; padding-left:19px; display:flex; flex-direction:column; justify-content:space-between; gap:20px; }
.fk-site .fk-feature-aside span { font-size:11px; letter-spacing:.13em; line-height:1.6; color:#636e64; }
.fk-site .fk-feature-aside img { width:100%; height:205px; object-fit:cover; }
/* Latest and archive cards. */
.fk-site .fk-latest { margin-bottom:38px; }
.fk-site .fk-post-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.fk-site .fk-post-card { display:flex; min-width:0; flex-direction:column; background:transparent; border:1px solid #e5dfd5; }
.fk-site .fk-post-card-media { width:100%; aspect-ratio:1.8/1; background:#b5ac9b; }
.fk-site .fk-post-card-media img { width:100%; height:100%; object-fit:cover; }
.fk-site .fk-post-card-body { flex:1; padding:13px 16px 16px; display:flex; align-items:flex-start; flex-direction:column; }
.fk-site .fk-card-meta { display:flex; flex-wrap:wrap; column-gap:7px; color:#687168; font-size:10px; letter-spacing:.03em; margin-bottom:5px; }
.fk-site .fk-card-meta time { white-space:nowrap; }
.fk-site .fk-post-card h3 { margin:0 0 11px; font-size:clamp(19px,1.6vw,25px); line-height:1.2; overflow-wrap:anywhere; }
.fk-site .fk-post-card p { margin-bottom:24px; color:#656b64; font-size:13px; line-height:1.55; }
.fk-site .fk-text-link { margin-top:auto; font-size:12px; font-weight:700; color:#26352f; }
.fk-site .fk-text-link span { margin-left:6px; }
.fk-site .fk-about { padding:31px 34px; margin:35px 0 47px; border-top:1px solid #dcd5ca; border-bottom:1px solid #dcd5ca; display:grid; grid-template-columns:.32fr 1fr; gap:38px; }
.fk-site .fk-about h2 { font-size:39px; margin:4px 0 0; }
.fk-site .fk-about p { color:#525c54; font-size:15px; line-height:1.8; margin:0; }
.fk-site .fk-promo { display:grid; min-height:217px; grid-template-columns:24% 1fr 31%; background:#657b6c; color:#fff; }
.fk-site .fk-promo-image { background: url('banner.webp') center center / cover no-repeat; }
.fk-site .fk-promo-copy { padding:22px 35px; align-self:center; }
.fk-site .fk-promo h2 { color:#fff; font-size:clamp(23px,2.55vw,38px); margin-bottom:12px; }
.fk-site .fk-promo p { color:#f1f4ee; font-size:13px; line-height:1.6; max-width:590px; margin-bottom:13px; }
.fk-site .fk-button-light { color:#26352f!important; background:#f8f5ef; border-color:#f8f5ef; padding:11px 19px; }
.fk-site .fk-button-light:hover { background:#e1dbd2; border-color:#e1dbd2; }
.fk-site .fk-promo-marks { display:flex; align-self:center; gap:17px; justify-content:space-around; padding:0 26px 0 0; }
.fk-site .fk-promo-marks>span { text-align:center; font:normal 34px/1 Georgia,serif; color:#faf8f1; }
.fk-site .fk-promo-marks small { display:block; max-width:76px; padding-top:9px; font:600 10px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; letter-spacing:.1em; }
/* Inner pages share one full-width cream surface: no white boxes under title or content. */
.fk-site .fk-inner-page { padding-top:36px; padding-bottom:68px; }
.fk-site .fk-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-bottom:35px; color:#677369; font-size:12px; overflow-wrap:anywhere; }
.fk-site .fk-breadcrumb a { font-weight:600; }.fk-site .fk-breadcrumb>span:last-child { color:#6f746c; }
.fk-site .fk-article-top { max-width:1080px; margin:0 0 32px; }
.fk-site .fk-article-top h1,.fk-site .fk-page-title h1 { font-size:clamp(38px,4.8vw,70px); line-height:1.08; margin:0 0 21px; overflow-wrap:anywhere; }
.fk-site .fk-article-top .fk-eyebrow { margin-bottom:15px; }
.fk-site .fk-article-meta { font-size:13px; color:#69736c; display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.fk-site .fk-article-cover { width:100%; margin-bottom:40px; max-height:560px; background:#b4ad9f; aspect-ratio:2.35 / 1; }
.fk-site .fk-article-cover img { width:100%; height:100%; object-fit:cover; }
.fk-site .fk-article-grid { display:grid; grid-template-columns:minmax(0, 1fr) 305px; gap:clamp(28px,4vw,66px); align-items:start; }
.fk-site .fk-article-main { min-width:0; padding:0; background:transparent; }
.fk-site .fk-post-content { background:transparent; color:#28362f; font-size:17px; line-height:1.86; overflow-wrap:anywhere; }
.fk-site .fk-post-content :where(p,ul,ol,blockquote,figure,table,pre) { margin-bottom:1.28em; }
.fk-site .fk-post-content :where(h2,h3,h4,h5,h6) { clear:both; scroll-margin-top:24px; color:#192820; }
.fk-site .fk-post-content h2 { font-size:clamp(29px,3vw,41px); margin:1.5em 0 .56em; }
.fk-site .fk-post-content h3 { font-size:clamp(23px,2.15vw,32px); margin:1.3em 0 .55em; }
.fk-site .fk-post-content h4 { font-size:23px; margin:1.1em 0 .5em; }
.fk-site .fk-post-content :where(a:not(.wp-block-button__link)) { color:#6c5037; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.fk-site .fk-post-content a:hover { color:#a66d40; }
.fk-site .fk-post-content :where(ul,ol) { padding-left:1.4em; list-style-position:outside; }
.fk-site .fk-post-content ul { list-style:disc; }.fk-site .fk-post-content ol { list-style:decimal; }
.fk-site .fk-post-content li { margin:0 0 .55em; }
.fk-site .fk-post-content img { max-width:100%; height:auto; object-fit:contain; border-radius:0; }
.fk-site .fk-post-content :where(iframe,video,embed,object) { max-width:100%; }
.fk-site .fk-post-content iframe { aspect-ratio:16/9; }
.fk-site .fk-post-content blockquote { border-left:3px solid #b88d65; padding:14px 22px; margin-left:0; background:#ece6dc; color:#314039; font:italic 20px/1.55 Georgia,serif; }
.fk-site .fk-post-content blockquote p:last-child { margin-bottom:0; }
.fk-site .fk-post-content :where(table,.wp-block-table table) { width:100%; border-collapse:collapse; font-size:15px; }
.fk-site .fk-post-content :where(th,td) { border:1px solid #d3cec3; padding:10px 13px; color:#26352f; background:transparent; }
.fk-site .fk-post-content th { background:#e9e4da; font-weight:700; }
.fk-site .fk-post-content pre { max-width:100%; overflow-x:auto; padding:18px; background:#e9e3d9; color:#26352f; font-size:13px; }
.fk-site .fk-post-content :where(code,kbd) { color:#36493e; }
.fk-site .fk-post-content :where(figcaption,.wp-caption-text) { color:#69726c; font-size:13px; text-align:center; }
.fk-site .fk-post-content :where(.aligncenter,figure.aligncenter) { display:block; margin-inline:auto; }
.fk-site .fk-post-content :where(.alignleft) { float:left; max-width:45%; margin:0 22px 14px 0; }
.fk-site .fk-post-content :where(.alignright) { float:right; max-width:45%; margin:0 0 14px 22px; }
.fk-site .fk-post-content :where(.wp-block-group,.wp-block-columns,.wp-block-media-text,.td-page-content,.td-post-content) { max-width:100%; color:inherit; }
.fk-site .fk-post-content :where(.td-post-content,.td-page-content) { background:transparent!important; }
.fk-site .fk-post-content :where(.wp-block-button__link) { background:#26352f; color:white; border-radius:0; padding:12px 20px; }
.fk-site .fk-post-content :where(.wp-block-separator) { border:0; border-top:1px solid #bdb8ad; }
.fk-site .fk-post-tags { margin-top:40px; font-size:13px; border-top:1px solid var(--fk-line); padding-top:18px; }
.fk-site .fk-post-tags>span { font-weight:700; }
.fk-site .fk-article-end { margin:35px 0 45px; padding:20px 23px; background:#e9e5da; border-left:3px solid var(--fk-sage); }
.fk-site .fk-article-end span { font:normal 27px Georgia,serif; }
.fk-site .fk-article-end p { font-size:14px; margin:4px 0 0; color:#556257; }
.fk-site .fk-comments { border-top:1px solid var(--fk-line); padding-top:22px; background:transparent; }
.fk-site .fk-comments :where(h3,h4) { font:normal 28px Georgia,serif; }
.fk-site .fk-comments :where(input,textarea) { max-width:100%; background:#fffdf9; border:1px solid #cfc9be; color:#24332d; }
.fk-site .fk-comments :where(input[type=submit],button) { padding:11px 18px; background:#26352f; color:white; border:0; cursor:pointer; }
/* Sidebar: only inner TOC scrolls. Every other box always stays below it in document flow. */
.fk-site .fk-sidebar { position:static; display:flex; flex-direction:column; gap:20px; min-width:0; height:auto; max-height:none; overflow:visible!important; }
.fk-site .fk-side-box { padding:21px 21px 22px; border:1px solid #d8d4ca; background:#ece9e1; color:#293831; height:auto; overflow:visible; }
.fk-site .fk-side-box h2 { font-size:27px; margin:0 0 14px; }
.fk-site .fk-side-note { font-size:12px; color:#69746b; margin:-8px 0 14px; }
.fk-site .fk-toc-scroll { max-height:270px; overflow-y:auto; overflow-x:hidden; padding:0 10px 0 0; scrollbar-width:thin; scrollbar-color:#93a195 #e1ded5; }
.fk-site .fk-toc-scroll::-webkit-scrollbar { width:7px; }.fk-site .fk-toc-scroll::-webkit-scrollbar-thumb { background:#93a195; border-radius:8px; }
.fk-site .fk-toc-scroll ul { padding:0; margin:0; list-style:none; }
.fk-site .fk-toc-scroll li { padding:0; margin:0; border-bottom:1px solid #d9d7ce; }
.fk-site .fk-toc-scroll li:last-child { border:0; }
.fk-site .fk-toc-scroll a { display:block; font-size:13px; line-height:1.5; padding:10px 0; font-weight:600; color:#36473c; }
.fk-site .fk-toc-scroll .fk-toc-h3 a { font-size:12px; font-weight:400; padding-left:14px; }
.fk-site .fk-toc-scroll a:hover { color:#a16c43; }
.fk-site .fk-sidebar-post-list,.fk-site .fk-sidebar-cat-list { padding:0; margin:0; list-style:none; }
.fk-site .fk-sidebar-post-list li { border-top:1px solid #d9d7ce; padding:11px 0; }
.fk-site .fk-sidebar-post-list a { display:block; font:400 17px/1.36 Georgia,serif; }
.fk-site .fk-sidebar-post-list time { display:block; margin-top:6px; font-size:11px; color:#718078; }
.fk-site .fk-sidebar-cat-list li { border-top:1px solid #d9d7ce; padding:10px 0; }
.fk-site .fk-sidebar-cat-list a { font-size:13px; font-weight:600; display:flex; justify-content:space-between; gap:10px; }
.fk-site .fk-sidebar-cat-list a span { color:#9a6d44; }
/* WordPress pages, categories, archives and search results. */
.fk-site .fk-page-title { padding-bottom:23px; border-bottom:1px solid var(--fk-line); margin-bottom:32px; }
.fk-site .fk-static-content { max-width:960px; margin:0 auto; min-height:350px; }
.fk-site .fk-archive-heading { padding:32px 42px; min-height:230px; background:#e7e6dc; display:grid; grid-template-columns:minmax(0,1fr) 165px; gap:26px; margin:0 0 38px; align-items:center; }
.fk-site .fk-archive-heading h1 { font-size:clamp(34px,4.2vw,63px); margin:6px 0 16px; overflow-wrap:anywhere; }
.fk-site .fk-archive-description { max-width:930px; font-size:16px; line-height:1.75; color:#4c5c51; }
.fk-site .fk-archive-description p { margin-bottom:0; }
.fk-site .fk-archive-graphic { display:flex; justify-content:center; align-items:center; border:1px solid #a0afa3; color:#63796c; width:155px; height:155px; transform:rotate(-7deg); font-size:14px; font-weight:700; line-height:2; text-align:center; letter-spacing:.2em; }
.fk-site .fk-archive-list-heading { margin-bottom:20px; }
.fk-site .fk-archive-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.fk-site .fk-archive-grid .fk-post-card-media { aspect-ratio:1.65/1; }
.fk-site .fk-archive-grid .fk-post-card-body { padding:17px 19px 22px; }
.fk-site .fk-archive-grid h3 { font-size:clamp(21px,2vw,29px); }
.fk-site .fk-pagination { margin:38px 0 15px; }
.fk-site .fk-pagination ul { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; list-style:none; margin:0; padding:0; gap:7px; }
.fk-site .fk-pagination li { list-style:none; }
.fk-site .fk-pagination :where(a,span) { display:inline-block; padding:8px 14px; border:1px solid var(--fk-line); min-width:42px; text-align:center; background:#eeeae2; }
.fk-site .fk-pagination .current { background:#26352f; color:white; border-color:#26352f; }
.fk-site .fk-error-page { min-height:450px; text-align:center; }
.fk-site .fk-error-page h1 { font-size:clamp(42px,5vw,70px); }
.fk-site .fk-error-page>p { margin:15px auto; max-width:580px; }
.fk-site .fk-error-page>form { text-align:left; max-width:450px; margin:28px auto; }
.fk-site .fk-error-page>form label { display:block; font-weight:600; margin-bottom:6px; }
.fk-site .fk-error-cats { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin:34px 0; }
.fk-site .fk-error-cats a { padding:8px 11px; border:1px solid var(--fk-line); font-size:12px; }
/* Footer and the 5 custom Statlink links are present on EVERY template. */
.fk-site .fk-footer { background:var(--fk-footer); color:#27362e; border-top:1px solid #dcd5ca; }
.fk-site .fk-footer-top { display:grid; grid-template-columns:1.25fr .7fr 1fr 1fr; gap:clamp(20px,4vw,65px); max-width:1480px; margin:auto; padding:50px 54px 42px; }
.fk-site .fk-footer .fk-logo { min-width:0; }
.fk-site .fk-logo-small .fk-logo-type strong { font-size:25px; }.fk-site .fk-logo-small .fk-logo-type small { font-size:9px; }
.fk-site .fk-logo-small .fk-logo-corners { height:34px; width:17px; }
.fk-site .fk-footer-about p { margin:15px 0 0; max-width:290px; color:#657267; font-size:13px; line-height:1.7; }
.fk-site .fk-footer h2 { font:600 14px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; margin:5px 0 16px; letter-spacing:.08em; text-transform:uppercase; }
.fk-site .fk-footer ul { list-style:none; padding:0; margin:0; }
.fk-site .fk-footer li { margin:0 0 9px; line-height:1.45; }
.fk-site .fk-footer li a { font-size:13px; color:#546157; }
.fk-site .fk-footer li a:hover { color:#a16c43; }
.fk-site .fk-footer-lower { position:relative; display:flex; gap:20px; align-items:center; justify-content:space-between; margin:0 54px; border-top:1px solid var(--fk-line); padding:17px 0; font-size:12px; color:#70786e; }
.fk-site .fk-back-to-top { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:#26352f; color:#fff!important; font-size:20px; line-height:1; }
.fk-site .fk-statlink-links { display:flex; align-items:center; flex-wrap:wrap; gap:11px 22px; padding:10px 54px 21px; border-top:1px solid #e7e0d6; }
.fk-site .fk-statlink-links span { font-size:12px; color:#4a5a4e; font-weight:600; }
.fk-site .fk-statlink-links a { color:#344b39; text-decoration:underline; text-underline-offset:2px; }
/* Tablet and mobile: full site width, no horizontal overflow, accessible menus. */
@media(max-width:1350px) {
 .fk-site .fk-primary-nav { gap:12px; }.fk-site .fk-logo { min-width:245px; }
 .fk-site .fk-header-main { width:calc(100% - 45px); gap:14px; }
 .fk-site .fk-content-wrap { width:calc(100% - 70px); }
 .fk-site .fk-heading-note { display:none; }
 .fk-site .fk-feature-section { grid-template-columns:1.08fr .9fr; }
 .fk-site .fk-feature-aside { display:none; }
 .fk-site .fk-feature-photo { min-height:305px; }
}
@media(max-width:1120px) {
 .fk-site .fk-primary-nav { display:none; }.fk-site .fk-mobile-toggle { display:block; margin-left:auto; }
 .fk-site .fk-mobile-toggle summary { font-size:13px; font-weight:600; }
 .fk-site .fk-mobile-toggle nav { position:absolute; right:0; top:calc(100% + 25px); width:min(355px,85vw); padding:13px; background:#fffaf3; box-shadow:0 15px 45px #25342f32; border:1px solid #ded9d0; display:flex; flex-direction:column; max-height:75vh; overflow:auto; }
 .fk-site .fk-mobile-toggle nav a { padding:9px 11px; border-bottom:1px solid #ece5db; font-size:14px; }
 .fk-site .fk-header-main { min-height:85px; }.fk-site .fk-hero { min-height:430px; }
 .fk-site .fk-hero-visual { min-height:430px; }
 .fk-site .fk-categories-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .fk-site .fk-category-image { height:165px; }
 .fk-site .fk-post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .fk-site .fk-article-grid { grid-template-columns:minmax(0,1fr) 275px; gap:32px; }
 .fk-site .fk-promo { grid-template-columns:24% 1fr; }.fk-site .fk-promo-marks { display:none; }
 .fk-site .fk-footer-top { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 .fk-site { width:100%; overflow:clip; }
 .fk-site .fk-topline-inner { padding:7px 18px; }.fk-site .fk-topline-quote { display:none; }
 .fk-site .fk-header-main { width:calc(100% - 28px); min-height:73px; gap:8px; }
 .fk-site .fk-logo { min-width:0; gap:8px; }.fk-site .fk-logo-type strong { font-size:23px; }
 .fk-site .fk-logo-type small { font-size:8px; letter-spacing:.07em; }.fk-site .fk-logo-corners { width:15px; height:34px; }
 .fk-site .fk-utility-nav { display:none; }
 .fk-site .fk-search-toggle summary { padding:5px; }.fk-site .fk-mobile-toggle summary { padding:5px; }
 .fk-site .fk-hero { display:flex; flex-direction:column; }
 .fk-site .fk-hero-copy { padding:41px 27px 31px; }
 .fk-site .fk-hero h1 { font-size:clamp(44px,10.5vw,77px); }
 .fk-site .fk-hero-lead { font-size:20px; }.fk-site .fk-hero-dashes { display:none; }
 .fk-site .fk-hero-visual { min-height:310px; height:310px; }
 .fk-site .fk-hero-visual:after { background:linear-gradient(180deg,#f0ebe3 0%,transparent 34%); }
 .fk-site .fk-hero-tag { font-size:10px; }
 .fk-site .fk-content-wrap { width:calc(100% - 34px); }
 .fk-site .fk-section { margin:29px auto 33px; }
 .fk-site .fk-section-heading { gap:11px; flex-wrap:wrap; margin-bottom:16px; }
 .fk-site .fk-section-heading h2 { font-size:32px; }.fk-site .fk-heading-rule { flex-basis:28px; }
 .fk-site .fk-section-more { font-size:11px; }
 .fk-site .fk-categories-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .fk-site .fk-category-image { height:145px; }.fk-site .fk-category-body { padding:12px; }
 .fk-site .fk-category-body strong { font-size:18px; }
 .fk-site .fk-feature-section { display:flex; flex-direction:column; padding-top:18px; gap:12px; }
 .fk-site .fk-feature-photo { min-height:240px; height:260px; }
 .fk-site .fk-feature-copy { padding:10px 2px; }.fk-site .fk-feature-copy h2 { font-size:32px; }
 .fk-site .fk-about { padding:20px 6px; display:block; }.fk-site .fk-about h2 { margin:8px 0; }
 .fk-site .fk-promo { grid-template-columns:1fr; }.fk-site .fk-promo-image { height:150px; }
 .fk-site .fk-promo-copy { padding:25px 24px; }.fk-site .fk-promo h2 { font-size:29px; }
 .fk-site .fk-inner-page { padding-top:23px; padding-bottom:45px; }.fk-site .fk-breadcrumb { margin-bottom:22px; }
 .fk-site .fk-article-top h1,.fk-site .fk-page-title h1 { font-size:clamp(37px,8vw,54px); }
 .fk-site .fk-article-cover { aspect-ratio:1.65/1; margin-bottom:26px; }
 .fk-site .fk-article-grid { display:flex; flex-direction:column; gap:38px; }
 .fk-site .fk-article-main,.fk-site .fk-sidebar { width:100%; }
 .fk-site .fk-post-content { font-size:16px; line-height:1.76; }
 .fk-site .fk-post-content h2 { font-size:30px; }.fk-site .fk-post-content h3 { font-size:25px; }
 .fk-site .fk-archive-heading { padding:22px; grid-template-columns:1fr; min-height:0; }
 .fk-site .fk-archive-graphic { display:none; }.fk-site .fk-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
 .fk-site .fk-footer-top { grid-template-columns:repeat(2,minmax(0,1fr)); padding:32px 25px; gap:24px; }
 .fk-site .fk-footer-lower { margin:0 25px; }.fk-site .fk-statlink-links { padding:13px 25px 22px; }
}
@media(max-width:480px) {
 .fk-site .fk-logo-type strong { font-size:19px; }.fk-site .fk-logo-corners { height:31px; width:13px; }
 .fk-site .fk-header-main { gap:3px; }.fk-site .fk-search-toggle svg { width:17px; }
 .fk-site .fk-categories-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .fk-site .fk-category-image { height:118px; }.fk-site .fk-category-body strong { font-size:17px; }
 .fk-site .fk-category-body small { font-size:9px; }
 .fk-site .fk-post-grid,.fk-site .fk-archive-grid { grid-template-columns:1fr; }
 .fk-site .fk-post-card-media { aspect-ratio:1.85/1; }
 .fk-site .fk-feature-photo { height:230px; min-height:230px; }
 .fk-site .fk-footer-top { grid-template-columns:1fr 1fr; gap:28px 16px; }
 .fk-site .fk-footer-about { grid-column:span 2; }.fk-site .fk-footer-top>div:last-child { grid-column:span 2; }
 .fk-site .fk-footer-lower { font-size:10px; }
}
@media(prefers-reduced-motion: reduce) { .fk-site :where(a,img) { transition:none!important; } }
