/*
Theme Name: The Casual Observer
Theme URI: https://casualobservernews.com/
Author: The Casual Observer
Description: Custom editorial/news theme for The Casual Observer.
Version: 0.2.0
Text Domain: casual-observer
*/

:root{--ink:#101820;--muted:#66717b;--blue:#3283a9;--light:#f4f7f9;--line:#dce2e6;--white:#fff;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}img{max-width:100%;height:auto;display:block}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}
.site-header{background:#fff;border-bottom:1px solid var(--line)}.masthead{padding:18px 0 12px}.masthead img{width:min(100%,900px);margin:auto;max-height:190px;object-fit:contain}.text-brand{text-align:center;padding:15px 0}.text-brand h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,7vw,82px);margin:0;line-height:.95}.text-brand p{text-transform:uppercase;letter-spacing:.3em;color:var(--blue);font-family:Georgia,serif;font-size:13px;margin:15px 0 0}.nav-bar{background:var(--ink);color:#fff}.nav-inner{display:flex;align-items:center;justify-content:center;gap:26px;min-height:48px}.nav-inner ul{list-style:none;display:flex;gap:25px;align-items:center;justify-content:center;margin:0;padding:0;flex-wrap:wrap}.nav-inner a{font-size:14px;font-weight:700}.nav-inner a:hover{color:#8ed0ef}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:24px;padding:10px}
.home-grid{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(280px,.75fr);gap:28px;padding:30px 0 10px}.hero{position:relative;min-height:380px;border-radius:5px;overflow:hidden;background:#222}.hero img{width:100%;height:100%;min-height:380px;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,.05) 65%)}.hero-copy{position:absolute;z-index:2;left:30px;right:30px;bottom:26px;color:#fff}.kicker{display:inline-block;background:var(--blue);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:5px 8px;border-radius:3px;margin-bottom:10px}.hero h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4vw,56px);line-height:1.02;margin:0 0 10px}.hero .excerpt{font-size:17px;max-width:800px;margin:0 0 12px}.meta{font-size:12px;color:#d8dde0}.section-title{font-family:Georgia,'Times New Roman',serif;font-size:30px;margin:0 0 14px;border-bottom:3px solid var(--ink);padding-bottom:8px}.worth-list{display:grid;gap:14px}.worth-item{display:grid;grid-template-columns:104px 1fr;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}.worth-item img{width:104px;height:78px;object-fit:cover;border-radius:3px}.worth-item h3{font-size:15px;line-height:1.22;margin:2px 0 7px}.worth-item .date{font-size:11px;color:var(--muted)}
.content-grid{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(280px,.75fr);gap:28px;padding:8px 0 50px}.latest-head{display:flex;justify-content:space-between;align-items:end;border-bottom:3px solid var(--ink);margin-bottom:4px}.latest-head .section-title{border:0;margin:0}.latest-head a{font-size:13px;color:var(--blue);font-weight:700;padding-bottom:12px}.story-row{display:grid;grid-template-columns:240px 1fr;gap:22px;padding:20px 0;border-bottom:1px solid var(--line)}.story-row img{width:240px;height:150px;object-fit:cover;border-radius:4px}.story-row h2{font-family:Georgia,'Times New Roman',serif;font-size:25px;line-height:1.12;margin:5px 0 8px}.story-row p{color:#48525a;margin:0 0 10px}.category-pill{display:inline-block;color:#fff;background:var(--blue);font-size:10px;font-weight:800;text-transform:uppercase;padding:4px 7px;border-radius:3px}.story-row .meta{color:var(--muted)}
.sidebar-card{background:var(--light);padding:20px;border-radius:5px;margin-bottom:20px}.sidebar-card h3{font-family:Georgia,serif;font-size:22px;margin:0 0 10px}.sidebar-card p{font-size:14px;color:#4f5b64}.topics{display:flex;flex-wrap:wrap;gap:8px}.topics a{background:#e5eaee;border-radius:3px;padding:7px 9px;font-size:12px}.motto{text-align:center;font-family:Georgia,serif;font-style:italic;font-size:18px;padding:25px 10px}.motto strong{display:block;font-style:normal;font-size:13px;margin-top:12px;color:var(--blue)}
.site-footer{background:var(--ink);color:#fff;padding:28px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-brand{font-family:Georgia,serif;font-size:22px;font-weight:700}.footer-brand small{display:block;font-family:Arial,sans-serif;font-size:11px;font-weight:400;color:#b8c0c5}.footer-links{display:flex;gap:20px;font-size:12px;color:#cbd1d5}
.archive-title,.page-title{font-family:Georgia,serif;font-size:42px;margin:35px 0 10px}.single-wrap{width:min(calc(100% - 40px),860px);margin:40px auto}.single-wrap h1{font-family:Georgia,serif;font-size:clamp(38px,6vw,62px);line-height:1.02;margin:8px 0 14px}.single-wrap .meta{color:var(--muted);margin-bottom:25px}.single-wrap .featured{margin:25px 0}.entry-content{font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.75}.entry-content h2,.entry-content h3{font-family:Arial,sans-serif;line-height:1.2}.entry-content a{color:var(--blue);text-decoration:underline}.pagination{padding:25px 0}.pagination .nav-links{display:flex;gap:8px}.pagination a,.pagination span{padding:7px 11px;background:var(--light);border-radius:3px}
@media(max-width:900px){.home-grid,.content-grid{grid-template-columns:1fr}.worth-list{grid-template-columns:1fr 1fr}.hero,.hero img{min-height:350px}.footer-inner{align-items:flex-start;flex-direction:column}}@media(max-width:680px){.wrap{width:min(calc(100% - 24px),var(--max))}.nav-inner{justify-content:flex-start}.menu-toggle{display:block}.nav-inner ul{display:none;width:100%;padding:10px 0 18px;flex-direction:column;align-items:flex-start}.nav-inner ul.open{display:flex}.hero,.hero img{min-height:330px}.hero-copy{left:18px;right:18px;bottom:18px}.hero h2{font-size:36px}.hero .excerpt{font-size:14px}.worth-list{grid-template-columns:1fr}.story-row{grid-template-columns:120px 1fr;gap:14px}.story-row img{width:120px;height:90px}.story-row h2{font-size:19px}.story-row p{display:none}.text-brand p{letter-spacing:.16em}.masthead{padding:10px 0}.footer-links{flex-wrap:wrap}}
