/* Earth's Echo — style-v1 */
*{margin:0;padding:0;box-sizing:border-box}
:root{
 --cream:#f2ebd9; --paper:#fbf8f0; --ink:#33291f; --muted:#6b6255;
 --sage:#7d9a6b; --forest:#3a4c33; --forest-d:#2b3a26; --terra:#b5623c; --terra-d:#96491f;
 --line:#e3d9c2; --card:#fffdf7;
}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);
 font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
 font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased;text-wrap:pretty}
h1,h2,h3,h4{font-family:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
 font-weight:600;line-height:1.18;color:var(--forest-d);text-wrap:balance}
img{max-width:100%;height:auto;display:block}
a{color:var(--terra-d)}
.container{max-width:1080px;margin:0 auto;padding:0 24px}

/* --- header: logo left, nav right, cream to match the logo plate --- */
.site-header{background:var(--cream);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 24px;
 max-width:1080px;margin:0 auto}
.site-logo img{width:74px;height:74px;border-radius:50%}
.nav-menu{display:flex;flex-wrap:wrap;gap:22px;align-items:center}
.nav-menu a{color:var(--forest-d);text-decoration:none;font-size:14.5px;font-weight:600;
 letter-spacing:.02em;padding:4px 0;border-bottom:2px solid transparent}
.nav-menu a:hover,.nav-menu a.active{border-bottom-color:var(--terra)}
/* pure-CSS mobile menu (no JS on this site at all) */
#nav-toggle{position:absolute;opacity:0;pointer-events:none}
.nav-label{display:none;cursor:pointer;padding:8px;line-height:0}
.nav-label span{display:block;width:24px;height:2px;background:var(--forest-d);margin:5px 0;border-radius:2px}

/* --- homepage: full-bleed hero + magazine river --- */
.hero{position:relative;min-height:460px;display:flex;align-items:flex-end;
 background:var(--forest-d) center/cover no-repeat}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(43,58,38,.15) 0%,rgba(43,58,38,.78) 100%)}
.hero-copy{position:relative;padding:56px 24px 46px;max-width:1080px;margin:0 auto;width:100%;color:#fff}
.hero-copy .k{display:inline-block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;
 color:#e5d8b8;margin-bottom:14px}
.hero-copy h1{color:#fff;font-size:clamp(32px,5.2vw,52px);max-width:16ch;margin-bottom:14px}
.hero-copy p{max-width:56ch;color:#efe8d6;font-size:17.5px}

.standrule{display:flex;align-items:center;gap:16px;margin:52px 0 30px}
.standrule h2{font-size:22px;white-space:nowrap}
.standrule:after{content:"";flex:1;height:1px;background:var(--line)}

/* alternating river rows */
.river{display:flex;flex-direction:column;gap:38px;padding-bottom:20px}
.row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:30px;align-items:center}
.row:nth-child(even) .row-img{order:2}
.row-img img{border-radius:3px;aspect-ratio:3/2;object-fit:cover;width:100%}
.row-body .cat{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--terra-d);
 font-weight:700;margin-bottom:9px}
.row-body h3{font-size:clamp(21px,2.6vw,27px);margin-bottom:10px}
.row-body h3 a{color:var(--forest-d);text-decoration:none}
.row-body h3 a:hover{color:var(--terra-d)}
.row-body .ex{color:var(--muted);font-size:16px;margin-bottom:10px}
.meta{font-size:13px;color:var(--muted);letter-spacing:.01em}
.lead .row-img img{aspect-ratio:16/10}
.lead .row-body h3{font-size:clamp(25px,3.4vw,34px)}

.introstrip{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);
 margin:46px 0 0;padding:30px 0}
.introstrip p{max-width:70ch;margin:0 auto;text-align:center;color:#4a4235;font-size:16.5px;padding:0 24px}

/* --- article --- */
.article{max-width:730px;margin:0 auto;padding:48px 24px 10px}
.article .k{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--terra-d);
 font-weight:700;margin-bottom:12px}
.article h1{font-size:clamp(28px,4.4vw,42px);margin-bottom:14px}
.byline{font-size:13.5px;color:var(--muted);padding-bottom:16px;border-bottom:1px solid var(--line)}
.standfirst{font-size:19px;line-height:1.6;color:#4a4235;margin:20px 0 24px;
 font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-style:italic}
.article-image img{border-radius:3px;width:100%;aspect-ratio:3/2;object-fit:cover}
.article-content{margin-top:26px}
.article-content p{margin-bottom:19px}
.article-content p:first-of-type:first-letter{float:left;font-family:"Iowan Old Style",Palatino,Georgia,serif;
 font-size:56px;line-height:.86;padding:4px 10px 0 0;color:var(--forest)}
.related{margin:44px 0 60px;padding-top:24px;border-top:2px solid var(--forest)}
.related h4{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.related-grid{display:flex;flex-direction:column;gap:11px}
.related-grid a{color:var(--forest-d);text-decoration:none;font-weight:600;
 font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:17.5px;
 padding-left:18px;position:relative}
.related-grid a:before{content:"";position:absolute;left:0;top:11px;width:9px;height:2px;background:var(--terra)}
.related-grid a:hover{color:var(--terra-d)}

/* --- category + static pages --- */
.page-head{padding:46px 0 0}
.page-head .k{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--terra-d);
 font-weight:700;margin-bottom:10px}
.page-head h1{font-size:clamp(28px,4.4vw,40px);margin-bottom:8px}
.page-head>p{color:var(--muted);font-size:15px}
.cat-desc{max-width:64ch;margin:18px auto 0;text-align:center;color:#4a4235;font-size:16.5px}
.page{max-width:730px;margin:0 auto;padding:48px 24px 60px}
.page h1{font-size:clamp(28px,4.4vw,40px);margin-bottom:18px}
.page h2{font-size:22px;margin:30px 0 10px}
.page p{margin-bottom:16px}
.write-to{display:inline-block;margin-top:10px;font-weight:700;color:var(--terra-d);
 border-bottom:2px solid var(--terra);text-decoration:none;padding-bottom:2px}

/* --- footer: 2-col split, deep forest --- */
.site-footer{background:var(--forest-d);color:#e2dcc9;margin-top:64px;padding:48px 0 26px;
 border-top:4px solid var(--terra)}
.footer-split{display:grid;grid-template-columns:1.25fr 1fr;gap:44px}
.fabout .fbrand{font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:24px;color:#fff;margin-bottom:10px}
.fabout p{font-size:15px;color:#c7c0ab;max-width:46ch}
.flinks{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.flinks h5{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:#a8b79c;margin-bottom:12px}
.flinks a{display:block;color:#e2dcc9;text-decoration:none;font-size:14.5px;margin-bottom:9px;width:fit-content}
.flinks a:hover{color:#fff;text-decoration:underline}
.legal{margin-top:36px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);
 font-size:13px;color:#9d9787}

@media(max-width:840px){
 .row,.footer-split{grid-template-columns:1fr}
 .row:nth-child(even) .row-img{order:0}
 .nav-label{display:block}
 .nav-menu{display:none;width:100%;flex-direction:column;align-items:flex-start;gap:0;
  padding:8px 0 4px;border-top:1px solid var(--line);margin-top:12px}
 #nav-toggle:checked~.nav-menu{display:flex}
 .header-inner{flex-wrap:wrap}
 .nav-menu a{padding:10px 0;width:100%;border-bottom:1px solid var(--line)}
 .nav-menu a:hover,.nav-menu a.active{border-bottom-color:var(--line);color:var(--terra-d)}
 .hero{min-height:360px}
 .hero-copy{padding:40px 24px 34px}
}
@media(max-width:520px){
 body{font-size:16.5px}
 .site-logo img{width:62px;height:62px}
 .flinks{grid-template-columns:1fr}
}
