/* ------------------------------------------------------------------
   GeneratePress overrides + article, page, archive and author styling
   ------------------------------------------------------------------ */

/* Site shell */
body{background:var(--bg);color:var(--ink);font-family:var(--sans)}
.site.grid-container{background:transparent}
.site-content{padding:0}
.mgg-footer{margin-top:96px}
.site-footer{background:transparent;padding:0}

/* Homepage + custom listings: full width, no GeneratePress box */
.home .site.grid-container,
.mgg-full .site.grid-container{max-width:none;padding:0}
.home .site-content,
.mgg-full .site-content{display:block}
.mgg-home,.mgg-listing{width:100%}

/* Articles and pages (GeneratePress templates) */
.single .site-content .content-area .site-main,
.page:not(.home) .site-content .content-area .site-main,
.error404 .site-content .content-area .site-main{max-width:760px;margin:56px auto 24px;padding:0 20px}
.separate-containers .inside-article,
.one-container .inside-article,
.separate-containers .comments-area,
.one-container .comments-area,
.separate-containers .page-header{background:transparent;padding:0}
.separate-containers .site-main > *{margin-bottom:0}
.inside-article .entry-header{margin-bottom:0}
.crumbs{font-size:14px;color:var(--muted);margin-bottom:20px}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--accent)}
.entry-title,
h1.entry-title{font-family:var(--serif);font-weight:500;font-size:46px;line-height:1.08;letter-spacing:-.8px;margin:0 0 18px;color:var(--ink)}
.entry-meta{font-size:15px;color:var(--muted);margin:0 0 32px}
.entry-meta a{color:var(--accent);font-weight:600}
.entry-meta .posted-on::before{content:"Updated "}
.featured-image,.post-image{margin:0 0 36px;border-radius:18px;overflow:hidden}
.featured-image img,.post-image img{border-radius:18px}
.entry-content{font-size:19px;line-height:1.75;color:#2E2733}
.entry-content > *{margin:0 0 1.2em}
.entry-content h2{font-family:var(--serif);font-weight:500;font-size:34px;line-height:1.15;margin:1.8em 0 .6em;color:var(--ink)}
.entry-content h3{font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.2;margin:1.6em 0 .5em;color:var(--ink)}
.entry-content h4{font-size:19px;margin:1.4em 0 .4em;color:var(--ink)}
.entry-content a{text-decoration:underline;text-underline-offset:3px}
.entry-content ul,.entry-content ol{padding-left:1.3em;margin-left:0}
.entry-content li{margin:.35em 0}
.entry-content blockquote{margin:1.6em 0;padding:4px 0 4px 22px;border-left:3px solid var(--accent);font-family:var(--serif);font-size:24px;line-height:1.4;font-style:italic;background:transparent}
.entry-content img{border-radius:14px;height:auto}
.entry-content table{width:100%;border-collapse:collapse;font-size:16px}
.entry-content th,.entry-content td{border:0;border-bottom:1px solid var(--line);padding:10px 8px;text-align:left}
footer.entry-meta{display:none}
.post-navigation,.paging-navigation{display:none}

/* Author box + care note after articles */
.author-box{display:flex;gap:20px;align-items:flex-start;margin:48px 0 0;padding:28px;border-radius:18px;background:var(--band)}
.author-box img{width:96px;height:96px;border-radius:50%;object-fit:cover;flex-shrink:0}
.author-box .author-name{font-family:var(--serif);font-size:24px;color:var(--ink)}
.author-box p{margin:6px 0 0;font-size:15px;line-height:1.6;color:var(--body)}
.inside-article .care{margin-top:32px}

/* Comments (if enabled) */
.comments-area{margin-top:48px}
.comments-title,.comment-reply-title{font-family:var(--serif);font-weight:500}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{background:var(--card);border:1px solid var(--line-2);border-radius:12px;padding:12px 14px;color:var(--ink)}
.comment-form input:focus,.comment-form textarea:focus{border-color:var(--accent);outline:none}
.comment-form .submit,.comment-form input[type=submit]{background:var(--accent);color:#fff;border-radius:24px;padding:12px 26px;font-weight:600;font-family:var(--sans)}
.comment-form .submit:hover{background:var(--accent-dark)}

/* Listings (archive, category, search, blog) */
.wide-wrap{max-width:1280px;margin:0 auto;padding:56px var(--pad) 24px}
.archive-head{margin-bottom:40px}
.archive-head h1{font-family:var(--serif);font-weight:500;font-size:48px;letter-spacing:-.8px;margin:0}
.archive-head .lead{margin-top:12px;max-width:680px}
.thumb-img{width:100%;height:250px;object-fit:cover;border-radius:18px}
.pagination{margin:48px 0 0;display:flex;gap:10px;flex-wrap:wrap}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border-radius:22px;border:1px solid var(--line-2);color:var(--ink)}
.pagination .current{background:var(--accent);border-color:var(--accent);color:#fff}

/* Author page */
.author-hero{display:grid;grid-template-columns:260px 1fr;gap:48px;align-items:center;margin-bottom:64px}
.author-hero img{width:100%;height:auto;border-radius:20px}
.author-hero h1{font-family:var(--serif);font-weight:500;font-size:48px;margin:10px 0 16px}
.wide-wrap > h2{font-family:var(--serif);font-weight:500;margin:0 0 28px}

/* 404 */
.error404 .page-header{margin-bottom:12px}

@media (max-width:640px){
  .entry-title,h1.entry-title{font-size:34px}
  .entry-content{font-size:18px}
  .entry-content h2{font-size:28px}
  .archive-head h1,.author-hero h1{font-size:36px}
  .author-hero{grid-template-columns:1fr;gap:24px}
  .author-hero img{max-width:200px}
  .author-box{flex-direction:column}
  .single .site-content .content-area .site-main,.page:not(.home) .site-content .content-area .site-main{margin-top:32px}
  .mgg-footer{margin-top:64px}
}

/* Keep GeneratePress button hover/focus colors off our buttons */
button.btn:hover,button.btn:focus,button.btn:active{background:var(--accent-dark);color:#fff}
.guide button.btn:hover,.guide button.btn:focus,.guide button.btn:active{background:#000;color:#fff}
button.mgg-menu-toggle,button.mgg-menu-toggle:hover,button.mgg-menu-toggle:focus,button.mgg-menu-toggle:active{background:transparent;color:var(--ink)}
