/* The Peakside Journal — style-v1.css */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:400;background:#f5f1e8;color:#262220;line-height:1.7;-webkit-font-smoothing:antialiased}
.container{max-width:1000px;margin:0 auto;padding:0 24px}
img{max-width:100%;height:auto;display:block}

h1,h2,h3,h4,h5,h6{font-family:'Fraunces',Georgia,serif;font-weight:700;color:#262220;line-height:1.25}
h1{font-size:2.6rem;margin-bottom:.5rem}
h2{font-size:1.7rem;margin:2rem 0 1rem}
h3{font-size:1.25rem;font-weight:600;margin:1.5rem 0 .75rem}
p{margin-bottom:1.1rem}
a{color:#3a5a40;text-decoration:none}

/* HEADER */
.site-header{background:#f5f1e8;border-bottom:1px solid #e0d9c8;padding:32px 0 20px;position:relative}
.header-inner{display:flex;flex-direction:column;align-items:center;gap:18px}
.site-brand{display:flex;flex-direction:column;align-items:center;text-decoration:none}
.site-logo img{max-width:100%;height:auto}
.site-title,.site-tagline{display:none}
.nav-menu{display:flex;gap:30px;flex-wrap:wrap;justify-content:center}
.nav-menu a{color:#3a3530;font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:1.6px;padding:4px 0;border-bottom:2px solid transparent;transition:border-color .2s}
.nav-menu a:hover,.nav-menu a.active{border-bottom-color:#3a5a40}

/* HAMBURGER */
.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px}
.menu-toggle span{display:block;width:24px;height:2px;background:#262220;margin:5px 0;transition:all .3s}
.menu-toggle.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.menu-toggle.open span:nth-child(2){opacity:0}
.menu-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* HERO — Style 5 Split */
.hero{background:#efe8d8;padding:0;border-bottom:1px solid #e0d9c8}
.hero .hero-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;align-items:stretch;min-height:440px}
.hero .hero-image{min-width:0;overflow:hidden;background:#3a5a40;aspect-ratio:auto}
.hero .hero-image img{width:100%;height:100%;object-fit:cover;display:block}
.hero .hero-text{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:60px 56px;background:#efe8d8}
.hero .hero-eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:3px;color:#6a5a3f;margin-bottom:1.1rem;font-weight:500}
.hero h1{font-size:2.8rem;margin-bottom:1.1rem;letter-spacing:-.3px;color:#262220}
.hero .hero-tagline{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:1.2rem;color:#3a3530;margin-bottom:1.1rem;line-height:1.5}
.hero .hero-intro{font-size:1rem;color:#4a4338;line-height:1.7;margin-bottom:0}

/* PAGE HEADER (non-home) */
.page-header{padding:56px 0 28px;text-align:center;border-bottom:1px solid #e0d9c8;margin-bottom:48px}
.page-header h1{font-size:2.4rem;margin-bottom:.5rem}
.page-header .subtitle{color:#6a5a3f;font-style:italic;font-family:'Fraunces',Georgia,serif}

/* HOMEPAGE LAYOUT */
.featured{padding:64px 0 28px}
.featured-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.featured-card .card-image{aspect-ratio:4/3;min-width:0;overflow:hidden;border-radius:6px}
.featured-card .card-image img{width:100%;height:100%;object-fit:cover}
.featured-card .featured-body{min-width:0;background:transparent;position:relative;z-index:1}
.featured-card h2{font-size:2rem;margin:0 0 .8rem;line-height:1.25}
.featured-card h2 a{color:#262220}
.featured-card h2 a:hover{color:#3a5a40}
.featured-card .meta{font-size:.78rem;color:#6a5a3f;margin-bottom:.6rem;text-transform:uppercase;letter-spacing:2px;font-weight:500}
.featured-card .excerpt{margin-bottom:1rem;color:#3a3530;font-size:1.02rem}
.read-more{display:inline-block;color:#3a5a40;font-weight:600;font-size:.92rem;border-bottom:1px solid rgba(58,90,64,.4);padding-bottom:1px;text-transform:uppercase;letter-spacing:1.5px}
.read-more:hover{border-bottom-color:#3a5a40}

.posts-grid{padding:24px 0 72px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}
.card{background:transparent;border-radius:6px;overflow:hidden}
.card-image{aspect-ratio:4/3;overflow:hidden;margin-bottom:16px;border-radius:6px}
.card-image img{width:100%;height:100%;object-fit:cover}
.card-body{padding:0}
.card .meta{font-size:.74rem;color:#6a5a3f;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:2px;font-weight:500}
.card h3{font-size:1.2rem;margin:0 0 .55rem;font-weight:700;line-height:1.35}
.card h3 a{color:#262220}
.card h3 a:hover{color:#3a5a40}
.card .excerpt{font-size:.93rem;color:#3a3530;margin-bottom:.6rem;line-height:1.65}

.section-title{font-size:1.3rem;font-weight:700;margin-bottom:32px;padding-bottom:12px;border-bottom:1px solid #e0d9c8;text-transform:uppercase;letter-spacing:2.5px}

/* ARTICLE */
.article{padding:48px 24px 64px;max-width:1000px;margin:0 auto}
.article-header{max-width:720px;margin:0 auto 36px;text-align:center}
.article-header .meta{font-size:.78rem;color:#6a5a3f;text-transform:uppercase;letter-spacing:2.5px;margin-bottom:1rem;font-weight:500}
.article-header h1{font-size:2.5rem;margin-bottom:1rem;line-height:1.2}
.article-header .byline{font-size:.95rem;color:#6a5a3f;font-family:'Fraunces',Georgia,serif;font-style:italic}
.article-image{margin:0 0 40px;aspect-ratio:16/9;overflow:hidden;border-radius:6px}
.article-image img{width:100%;height:100%;object-fit:cover}
.article-content{max-width:700px;margin:0 auto;font-size:1.08rem;color:#2e2a26}
.article-content h2{font-size:1.55rem;margin:2.4rem 0 1rem}
.article-content p{margin-bottom:1.3rem}
.article-content a{color:#3a5a40;text-decoration:underline;text-decoration-color:rgba(58,90,64,0.35);text-underline-offset:3px}
.article-content a:hover{text-decoration-color:#3a5a40}

/* RELATED */
.related{padding:56px 0;border-top:1px solid #e0d9c8;margin-top:56px}
.related .section-title{text-align:center;border-bottom:none;margin-bottom:32px}

/* CATEGORY */
.category-list{padding:24px 0 72px}
.category-list .card-row{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-bottom:32px}

/* STANDARD PAGES */
.page{padding:48px 24px 72px;max-width:1000px;margin:0 auto}
.page-content{max-width:700px;margin:0 auto;font-size:1.04rem}
.page-content h2{font-size:1.5rem;margin:2rem 0 1rem}
.page-content p{margin-bottom:1.2rem}
.page-content a{color:#3a5a40;text-decoration:underline;text-decoration-color:rgba(58,90,64,0.35);text-underline-offset:3px}
.page-content a:hover{text-decoration-color:#3a5a40}

/* FOOTER */
.site-footer{background:#efe8d8;border-top:1px solid #e0d9c8;padding:52px 0 36px;margin-top:56px;text-align:center}
.site-footer .footer-inner{display:flex;flex-direction:column;align-items:center;gap:18px}
.site-footer .footer-logo img{width:70%;max-width:280px;height:auto;margin:0 auto}
.site-footer .footer-text{font-size:.9rem;color:#5a4f3f;max-width:580px;line-height:1.7;font-family:'Fraunces',Georgia,serif;font-style:italic}
.site-footer .footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;margin-top:6px}
.site-footer .footer-nav a{color:#3a5a40;font-size:.78rem;text-transform:uppercase;letter-spacing:2px;font-weight:500}
.site-footer .footer-nav a:hover{color:#262220}
.site-footer .copyright{font-size:.78rem;color:#6a5a3f;margin-top:12px}

/* MOBILE */
@media(max-width:768px){
  .menu-toggle{display:block;position:absolute;right:24px;top:30px}
  .nav-menu{display:none;flex-direction:column;width:100%;gap:0;padding:12px 0}
  .nav-menu.open{display:flex}
  .nav-menu a{padding:10px 0;border-bottom:1px solid #e0d9c8}
  .site-header{position:relative}
  .hero .hero-inner{grid-template-columns:1fr;min-height:0}
  .hero .hero-image{aspect-ratio:16/9}
  .hero .hero-text{padding:40px 24px}
  .hero h1{font-size:2rem}
  .featured-card{grid-template-columns:1fr;gap:24px}
  .featured-card h2{font-size:1.6rem}
  .grid-3{grid-template-columns:1fr;gap:36px}
  .grid-2{grid-template-columns:1fr;gap:36px}
  .category-list .card-row{grid-template-columns:1fr}
  h1{font-size:2rem}
  .article-header h1{font-size:1.9rem}
  .article-content{font-size:1rem}
}
