:root{
  --ink:#171717;
  --paper:#f6f0e5;
  --paper2:#fffaf1;
  --muted:#6f675f;
  --line:#d8cdbf;
  --orange:#ef5b23;
  --orange2:#c94312;
  --charcoal:#232323;
  --panel:#2b2b2b;
  --white:#fff;
  --max:1380px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper2);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
img{max-width:100%;display:block}
.wrap{width:min(calc(100% - 36px),var(--max));margin-inline:auto}
.network-bar{background:#121212;color:#eee;font-size:12px;font-weight:800;letter-spacing:.08em}
.network-inner{height:34px;display:flex;align-items:center;gap:24px}
.network-inner>a{color:#ff8b52}
.network-inner>span{opacity:.75}
.network-links{margin-left:auto;display:flex;gap:18px}
.masthead{display:flex;align-items:end;justify-content:space-between;padding:22px 0 16px}
.brand{display:flex;align-items:center;gap:12px;position:relative;line-height:.9}
.brand-mark{width:62px;height:62px;flex:0 0 auto}
.brand-words{display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:9px}
.brand-cave{font-family:Impact,"Arial Black",sans-serif;font-size:52px;letter-spacing:.02em}
.brand-news{font-family:Impact,"Arial Black",sans-serif;font-size:52px;color:var(--orange);letter-spacing:.02em}
.brand-rule{grid-column:1/3;height:6px;background:var(--orange);margin-top:8px}
.masthead-meta{text-align:right;display:grid;gap:2px;font-size:12px;letter-spacing:.08em}
.masthead-meta span{color:var(--muted);font-weight:800}
.main-nav{border-top:1px solid #111;border-bottom:3px solid #111;background:var(--paper)}
.nav-inner{display:flex;align-items:center;min-height:48px;gap:0;overflow:auto}
.nav-inner>a{white-space:nowrap;font-weight:900;text-transform:uppercase;font-size:13px;padding:15px 14px;border-right:1px solid var(--line)}
.nav-inner>a:first-child{border-left:1px solid var(--line)}
.nav-inner>a:hover{background:var(--ink);color:white;text-decoration:none}
.nav-search{margin-left:auto;display:flex;min-width:220px;padding-left:12px}
.nav-search input{width:140px;border:1px solid #999;padding:7px 9px;background:white}
.nav-search button{border:0;background:var(--orange);color:white;font-weight:900;padding:8px 10px;cursor:pointer}
.section-kicker{font-size:12px;font-weight:1000;letter-spacing:.14em;color:var(--orange);text-transform:uppercase}
.home-lead{padding:34px 0 28px}
.lead-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.8fr);gap:34px;margin-top:12px}
.lead-story{border-right:1px solid var(--line);padding-right:34px}
.lead-story h1{font-family:Georgia,serif;font-size:clamp(38px,5vw,72px);line-height:.98;letter-spacing:-.035em;margin:14px 0}
.lead-story>p{font-family:Georgia,serif;font-size:19px;color:#4e4943;max-width:850px}
.lead-image{display:block;background:#d9d2c8;aspect-ratio:16/8.7;overflow:hidden;border-top:7px solid var(--orange)}
.lead-image img{width:100%;height:100%;object-fit:cover}
.image-failed{background:linear-gradient(135deg,#2a2a2a,#444);position:relative}
.image-failed:after{content:"CAVEMAN'S NEWS";position:absolute;inset:0;display:grid;place-items:center;color:#fff8;font:900 18px Arial;letter-spacing:.12em}
.story-meta{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.09em;color:var(--muted)}
.story-meta span,.story-meta a{color:var(--orange)}
.story-meta b{background:#202020;color:white;padding:2px 6px}
.latest-rail{display:grid;align-content:start}
.rail-heading{font:1000 18px/1 Arial;border-top:6px solid #111;padding:12px 0 9px;text-transform:uppercase}
.rail-story{padding:15px 0;border-top:1px solid var(--line)}
.rail-story h3{font-family:Georgia,serif;font-size:21px;line-height:1.08;margin:7px 0}
.archive-callout{background:#1d1d1d;color:white;border-block:5px solid var(--orange)}
.archive-callout-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.archive-callout-inner div{display:grid}
.archive-callout-inner strong{font:1000 16px Arial;color:#ff8750;letter-spacing:.08em}
.archive-callout-inner span{color:#ddd}
.archive-callout a{font-weight:1000;white-space:nowrap}
.desk-section{padding:42px 0;border-bottom:1px solid var(--line)}
.desk-head{display:flex;align-items:end;justify-content:space-between;border-top:8px solid #111;padding-top:12px;margin-bottom:22px}
.desk-head h2,.page-head h1{font-family:Impact,"Arial Black",sans-serif;letter-spacing:.01em;font-size:clamp(38px,6vw,70px);line-height:.95;margin:4px 0}
.desk-head p,.page-head p{margin:4px 0;color:var(--muted);font-family:Georgia,serif;font-size:17px}
.desk-head>a{font-weight:900;color:var(--orange)}
.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.story-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:50px}
.story-card{border-top:1px solid #222;padding-top:12px}
.story-card:nth-child(-n+3){border-top:0}
.card-image{display:block;aspect-ratio:16/9;background:#ddd;overflow:hidden;margin-bottom:12px}
.card-image img{width:100%;height:100%;object-fit:cover}
.story-card h2,.story-card h3{font-family:Georgia,serif;line-height:1.08;margin:8px 0}
.story-card h2{font-size:28px}.story-card h3{font-size:25px}
.story-card p{color:#5b554e;margin:8px 0 0}
.page-head{padding:38px 0 24px;border-bottom:1px solid var(--line)}
.subnav{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.subnav a{border:1px solid #999;padding:6px 10px;font-size:12px;font-weight:900;text-transform:uppercase}
.list-stack{padding:16px 0 60px}
.list-story{display:grid;grid-template-columns:280px 1fr;gap:22px;border-top:1px solid var(--line);padding:22px 0}
.list-image{aspect-ratio:16/9;background:#ddd;overflow:hidden}.list-image img{width:100%;height:100%;object-fit:cover}
.list-story h2{font-family:Georgia,serif;font-size:30px;line-height:1.04;margin:7px 0}.list-story p{color:#5b554e;max-width:900px}
.article-header{padding:42px 0 22px}.article-wrap{max-width:1050px}
.article-header h1{font-family:Georgia,serif;font-size:clamp(44px,6vw,78px);line-height:.96;letter-spacing:-.035em;margin:13px 0}
.article-deck{font-family:Georgia,serif;font-size:22px;line-height:1.35;color:#4e4943;max-width:900px}
.byline{display:flex;flex-wrap:wrap;gap:16px;border-top:1px solid var(--line);padding-top:14px;font-size:13px}.byline strong{color:#222}.byline span{color:var(--muted)}
.article-hero{max-width:1240px;background:#ddd;max-height:740px;overflow:hidden}.article-hero img{width:100%;max-height:740px;object-fit:cover}
.article-layout{display:grid;grid-template-columns:220px minmax(0,780px);gap:46px;justify-content:center;padding:36px 0 70px}
.article-sidebar{font-size:12px}.side-block{border-top:4px solid #111;padding-top:10px;margin-bottom:25px;display:grid;gap:6px}.side-block>b{text-transform:uppercase;letter-spacing:.1em}.side-block>a{color:var(--orange);font-weight:900}
.tag-list{display:flex;flex-wrap:wrap;gap:5px}.tag-list span{border:1px solid #bbb;background:#fff;padding:3px 6px}
.article-body{font-family:Georgia,serif;font-size:19px;line-height:1.72}
.article-body p{margin:0 0 1.25em}.article-body h2{font-size:34px;line-height:1.12;margin-top:1.35em}.article-body h3{font-size:27px;line-height:1.15;margin-top:1.2em}
.article-body blockquote{border-left:5px solid var(--orange);margin:1.4em 0;padding:4px 0 4px 22px;font-style:italic;font-size:23px}
.article-body a{color:#b53d13;text-decoration:underline}
.article-body figure{margin:1.7em 0}.article-body figcaption{font:13px Arial;color:var(--muted);margin-top:5px}.article-body img{height:auto;margin:auto}
.article-body pre{overflow:auto;background:#1c1c1c;color:#eee;padding:18px;font:14px/1.45 Consolas,monospace}
.article-body table{border-collapse:collapse;width:100%;font-family:Arial;font-size:14px}.article-body td,.article-body th{border:1px solid #bbb;padding:7px;text-align:left}
.archive-note{font-family:Arial,sans-serif;background:#fff3e9;border-left:5px solid var(--orange);padding:14px 16px;margin-bottom:28px;font-size:14px}
.source-note,.correction-box{font-family:Arial,sans-serif;border-top:4px solid #111;margin-top:38px;padding-top:12px;font-size:14px}.source-note strong,.correction-box h3{text-transform:uppercase;letter-spacing:.08em}
.static-head{max-width:1000px}.prose-page{max-width:900px;padding:28px 0 70px;font-family:Georgia,serif;font-size:19px}.prose-page h2{font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.02em;border-top:4px solid #111;padding-top:9px;margin-top:32px}.prose-page a{color:#b53d13;text-decoration:underline}
.site-footer{background:#181818;color:#e9e1d4;border-top:7px solid var(--orange);margin-top:50px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:35px;padding:40px 0}.footer-grid h3{font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#ff8a52}.footer-grid>div{display:grid;align-content:start;gap:7px}.footer-grid a{color:#ddd;font-size:14px}.footer-brand{font:1000 31px Impact,Arial Black,sans-serif}.footer-brand b{color:var(--orange)}.footer-bottom{border-top:1px solid #444;padding:14px 0 30px;color:#aaa;font-size:12px}
.flashes{padding-top:14px}.flash{padding:11px 13px;margin:5px 0;border-left:5px solid}.flash.success{background:#dff4e5;border-color:#2c8b4b}.flash.error{background:#ffe0df;border-color:#b62920}
.empty-state{padding:35px;background:#eee6d9;border-left:6px solid var(--orange)}
.empty-state h1,.empty-state h2{margin-top:0}
.admin-shell{background:#ece8e1}.admin-page{padding:34px 0 60px}.admin-top{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:22px}.admin-top h1{font:1000 42px/1 Arial;margin:4px 0}.admin-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-actions form{display:inline}
.btn{display:inline-block;border:1px solid #333;background:#fff;color:#111;padding:9px 12px;font:900 13px Arial;cursor:pointer;text-decoration:none}.btn:hover{text-decoration:none;background:#eee}.btn.primary{background:var(--orange);border-color:var(--orange2);color:white}.btn.ghost{background:transparent}.btn.big{padding:13px 16px;width:100%}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.stat-grid>div{background:white;border-top:5px solid var(--orange);padding:18px}.stat-grid b{display:block;font:1000 32px Arial}.stat-grid span{font-size:12px;text-transform:uppercase;font-weight:900;color:var(--muted)}
.admin-table-wrap{overflow:auto;background:white}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid #ddd;padding:11px 12px;font-size:13px;vertical-align:top}.admin-table th{background:#222;color:white;text-transform:uppercase;font-size:11px}.admin-table td strong{display:block}.admin-table td small{display:inline-block;background:#222;color:#fff;padding:2px 5px;margin-top:4px}
.admin-login{min-height:55vh;display:grid;place-items:center;padding:50px 0}.admin-card{background:white;border-top:7px solid var(--orange);padding:28px;width:min(100%,480px);box-shadow:0 18px 50px #0002}.admin-card h1{font:1000 42px Arial;margin:4px 0 20px}
.form-stack,.settings-form{display:grid;gap:15px}.form-stack label,.settings-form label,.editor-form label{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
input,textarea,select{font:15px Arial;color:#111}.form-stack input,.settings-form input,.editor-form input,.editor-form textarea,.editor-form select{display:block;width:100%;margin-top:5px;padding:10px;border:1px solid #aaa;background:white}.editor-form textarea{resize:vertical}.code-editor{font:14px/1.4 Consolas,"Courier New",monospace}
.editor-form{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px}.editor-main,.editor-side{background:white;padding:20px;display:grid;gap:15px;align-content:start}.editor-side{position:sticky;top:10px;align-self:start}.editor-form fieldset{border:1px solid #bbb;padding:10px}.editor-form legend{font-size:12px;font-weight:900;text-transform:uppercase}.check-list{max-height:270px;overflow:auto;display:grid;gap:5px}.check-list label,.check-stack label{text-transform:none;letter-spacing:0;font-weight:700}.check-list input,.check-stack input{display:inline;width:auto;margin-right:7px}.check-stack{display:grid;gap:8px}.archive-admin-note{background:#fff1e7;border-left:4px solid var(--orange);padding:10px;font-size:12px}.settings-form{max-width:760px;background:white;padding:22px}
@media(max-width:980px){
  .brand-cave,.brand-news{font-size:40px}.brand-mark{width:50px;height:50px}.masthead-meta{display:none}
  .lead-grid{grid-template-columns:1fr}.lead-story{border-right:0;padding-right:0}.story-grid,.story-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-layout{grid-template-columns:1fr}.article-sidebar{display:none}.footer-grid{grid-template-columns:1fr 1fr}.editor-form{grid-template-columns:1fr}.editor-side{position:static}.stat-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .wrap{width:min(calc(100% - 24px),var(--max))}
  .network-inner>span,.network-links{display:none}.masthead{padding:15px 0}.brand-cave,.brand-news{font-size:31px}.brand-mark{width:40px;height:40px}.brand-rule{height:4px}
  .nav-search{display:none}.nav-inner>a{font-size:11px;padding:13px 10px}
  .lead-story h1{font-size:42px}.story-grid,.story-grid-wide{grid-template-columns:1fr}.story-card:nth-child(-n+3){border-top:1px solid #222}
  .archive-callout-inner{align-items:flex-start;flex-direction:column;padding:15px 0}
  .desk-head{align-items:flex-start;gap:10px;flex-direction:column}.list-story{grid-template-columns:1fr}.article-header h1{font-size:43px}.article-deck{font-size:19px}.article-body{font-size:18px}.footer-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}
}

/* ============================================================
   CAVEMAN'S OFFICIAL BRAND ASSET OVERRIDE — NEWS DIVISION
   Uses the user-supplied authentic handprint assets and follows
   the Caveman's black / warm cream / fire-orange brand system.
   ============================================================ */
.brand{align-items:center;gap:15px}
.brand-mark{width:76px;height:76px;object-fit:contain;flex:0 0 auto}
.brand-words{display:grid;grid-template-columns:1fr;align-items:center;min-width:360px;line-height:1}
.brand-cave{font-family:Georgia,"Times New Roman",serif;font-weight:900;font-size:54px;line-height:.84;letter-spacing:-.035em;color:var(--ink)}
.brand-rule{display:block;width:100%;height:5px;background:var(--orange);margin-top:9px}
.brand-news{font-family:Impact,"Arial Narrow","Arial Black",sans-serif;font-size:19px;line-height:1;letter-spacing:.34em;color:var(--ink);padding-top:7px;text-align:center;text-indent:.34em}

.footer-brand-lockup{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%}
.footer-hand{width:58px;height:58px;object-fit:contain;flex:0 0 auto}
.footer-brand{font-family:Georgia,"Times New Roman",serif;font-weight:900;font-size:31px;line-height:.9;letter-spacing:-.02em;color:#f6f0e5}
.footer-brand-rule{display:block;height:3px;background:var(--orange);margin:6px 0 5px}
.footer-news{font-family:Impact,"Arial Narrow","Arial Black",sans-serif;font-size:13px;letter-spacing:.28em;text-align:center;text-indent:.28em;color:#f6f0e5}

@media(max-width:980px){
  .brand-mark{width:60px;height:60px}
  .brand-words{min-width:290px}
  .brand-cave{font-size:43px}
  .brand-news{font-size:16px}
}
@media(max-width:640px){
  .brand{gap:9px}
  .brand-mark{width:47px;height:47px}
  .brand-words{min-width:210px}
  .brand-cave{font-size:31px}
  .brand-rule{height:4px;margin-top:6px}
  .brand-news{font-size:12px;padding-top:5px;letter-spacing:.27em;text-indent:.27em}
}

/* ===== CAVEMANS NEWS FULL LOGO PATCH ===== */
.masthead{align-items:center;padding:18px 0 14px}
.brand.brand-image{display:block;line-height:0;flex:1 1 auto;min-width:0;text-decoration:none}
.brand.brand-image:hover{text-decoration:none}
.brand-logo-full{display:block;height:92px;width:auto;max-width:min(100%,760px)}
@media(max-width:980px){
  .brand-logo-full{height:78px;max-width:min(100%,620px)}
}
@media(max-width:640px){
  .masthead{padding:12px 0}
  .brand-logo-full{height:auto;max-width:100%}
}
/* ===== END CAVEMANS NEWS FULL LOGO PATCH ===== */
