/*
Theme Name: Postpartum Guide
Theme URI: https://postpartumg.com
Author: Postpartum Guide
Author URI: https://postpartumg.com
Description: A clinically-styled, SEO-first WordPress theme for postpartum recovery, feeding, and mental health content. Dark "Night Feed Mode" design built for one-handed, low-glare reading. Fully responsive, widget-ready sidebar, fast-loading (no page-builder bloat).
Version: 1.0.1
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 6.7
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: postpartum-guide
Tags: blog, one-column, two-columns, right-sidebar, custom-menu, featured-images, translation-ready, threaded-comments, sticky-post
*/

:root{
  --bg:#141B2E; --bg-soft:#1B2440; --card:#202A4A; --ink:#F3EFE6; --ink-soft:#AEB6D6;
  --amber:#F2B25C; --amber-deep:#D89434; --line:#2C3559; --radius:16px;
  --max: var(--pg-max, 1440px);
  --shadow:0 4px 14px rgba(0,0,0,.35);
}
*,*::before,*::after{box-sizing:border-box;}
html{overflow-x:hidden;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Nunito Sans',sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;width:100%;padding-bottom:68px;}
h1,h2,h3,h4,.disp{font-family:'Nunito Sans',sans-serif;font-weight:800;letter-spacing:-.01em;margin:0;color:#FFFDF8;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;height:auto;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px;}
.screen-reader-text,.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-radius:4px;}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);}
.skip-link{position:absolute;left:-999px;top:0;background:var(--amber);color:var(--bg);padding:12px 18px;z-index:200;font-weight:700;}
.skip-link:focus{left:0;top:0;}

/* ===== MODE NOTICE ===== */
.mode-bar{background:var(--bg-soft);border-bottom:1px solid var(--line);padding:8px 0;font-size:.78rem;color:var(--ink-soft);text-align:center;}
.mode-bar strong{color:var(--amber);}

/* ===== HEADER ===== */
.site-header{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100;}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:16px;max-width:var(--max);margin:0 auto;}
.site-logo{font-weight:800;font-size:1.2rem;display:flex;align-items:center;gap:8px;color:#FFFDF8;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.moon{width:30px;height:30px;border-radius:50%;background:var(--amber);display:flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--bg);flex-shrink:0;}
nav.primary-menu{display:flex;gap:22px;font-weight:700;font-size:.88rem;color:var(--ink-soft);}
nav.primary-menu ul{list-style:none;display:flex;gap:22px;margin:0;padding:0;}
nav.primary-menu a:hover{color:var(--amber);}
.header-actions{display:flex;gap:10px;align-items:center;flex-shrink:0;}
.icon-btn{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--bg-soft);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;}
.header-cta{background:var(--amber);color:var(--bg);padding:11px 18px;border-radius:12px;font-weight:800;font-size:.85rem;}
.header-cta:hover{background:var(--amber-deep);}
.menu-toggle{display:none;}
@media(max-width:360px){
	.site-logo{font-size:1.05rem;}
	.header-inner{padding:12px 14px;gap:10px;}
	.icon-btn{width:36px;height:36px;}
}

/* Header search panel — toggled open by the search icon button */
.header-search-panel{
	display:none; background:var(--bg-soft); border-bottom:1px solid var(--line);
	padding:14px 20px;
}
.header-search-panel.open{display:block;}
.header-search-panel .sw-search{max-width:520px; margin:0 auto;}

/* Mobile dropdown nav — reachable replacement for the desktop inline menu */
.mobile-menu{
	display:none; flex-direction:column; gap:2px; background:var(--bg);
	border-bottom:1px solid var(--line); padding:8px 20px 16px;
}
.mobile-menu.open{display:flex;}
.mobile-menu a{
	padding:12px 10px; font-weight:700; font-size:.95rem; color:var(--ink);
	border-radius:10px; border-bottom:1px solid var(--line);
}
.mobile-menu a:hover{background:var(--bg-soft); color:var(--amber);}
.mobile-menu-cta{
	margin-top:8px; background:var(--amber); color:var(--bg) !important; text-align:center;
	border-radius:12px !important; border-bottom:none !important; font-weight:800;
}
@media(max-width:820px){
	nav.primary-menu{display:none;}
	.header-cta{display:none;}
	.menu-toggle{display:flex;}
}
@media(min-width:821px){
	.mobile-menu{display:none !important;}
}

/* ===== WEEK NAV ===== */
.week-nav{background:var(--bg-soft);padding:16px 0;overflow-x:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.week-row{display:flex;gap:10px;max-width:var(--max);margin:0 auto;padding:0 20px;}
.wk{flex:0 0 auto;padding:9px 16px;border-radius:999px;border:1px solid var(--line);color:var(--ink-soft);font-size:.85rem;font-weight:700;white-space:nowrap;}
.wk.active,.wk:hover{background:var(--amber);color:var(--bg);border-color:var(--amber);}

/* ===== HERO ===== */
.hero{padding:36px 0 8px;}
.hero-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow);}
.hero-card .badge{background:rgba(242,178,92,.15);color:var(--amber);padding:5px 10px;border-radius:8px;font-size:.72rem;font-weight:700;display:inline-block;margin-bottom:10px;}
.hero-card h1{font-size:clamp(1.6rem,3.4vw,2.4rem);line-height:1.16;margin-bottom:10px;}
.hero-card .accent{color:var(--amber);}
.hero-card p{color:var(--ink-soft);font-size:.98rem;margin-bottom:16px;}
.hero-search{display:flex;gap:8px;background:var(--bg-soft);border:1px solid var(--line);border-radius:14px;padding:5px;max-width:520px;}
.hero-search input{border:none;outline:none;flex:1;padding:10px 12px;font-family:inherit;font-size:.92rem;background:transparent;color:var(--ink);}
.hero-search input::placeholder{color:var(--ink-soft);}
.hero-search button{background:var(--amber);color:var(--bg);border:none;border-radius:10px;padding:10px 16px;font-weight:800;cursor:pointer;}

/* ===== SLIM FEATURED IMAGES ===== */
.feat-img{aspect-ratio:21/7;border-radius:16px;overflow:hidden;margin:18px 0;background:linear-gradient(150deg,#2A2F52,#1B2440);}
.feat-img img{width:100%;height:100%;object-fit:cover;opacity:.92;}
.card-img{aspect-ratio:16/8;border-radius:12px;overflow:hidden;background:linear-gradient(150deg,#2A2F52,#1B2440);position:relative;}
.card-img img{width:100%;height:100%;object-fit:cover;}
.card-img .tag{position:absolute;top:10px;left:10px;background:var(--bg);padding:5px 11px;border-radius:8px;font-size:.66rem;font-weight:700;color:var(--amber);}

/* ===== LAYOUT: content column + sidebar, no dead gap ===== */
.layout{display:grid;grid-template-columns:minmax(0,860px) 300px;gap:0;align-items:start;max-width:1220px;margin:0 auto;}
.content-col{border-right:1px solid var(--line);padding-right:24px;}
.side-col{padding-left:24px;position:sticky;top:70px;}
@media(max-width:980px){
  .layout{grid-template-columns:1fr;max-width:100%;}
  .content-col{border-right:none;padding-right:0;}
  .side-col{padding-left:0;position:static;border-top:1px solid var(--line);padding-top:24px;margin-top:16px;}
}

.section{padding:36px 0;}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px;gap:14px;flex-wrap:wrap;}
.section-head h2{font-size:clamp(1.25rem,2.2vw,1.6rem);}
.see-all{font-weight:700;font-size:.84rem;color:var(--amber);}
.see-all:hover{text-decoration:underline;}

/* ===== FEED / ARCHIVE CARDS ===== */
.feed{display:flex;flex-direction:column;gap:14px;}
.story{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;}
.story .body{padding:16px 18px 18px;}
.story h2,.story h3{font-size:1.06rem;line-height:1.32;margin-bottom:8px;color:#FFFDF8;}
.story h2 a:hover,.story h3 a:hover{color:var(--amber);}
.story .excerpt{font-size:.86rem;color:var(--ink-soft);margin-bottom:10px;}
.story .meta{display:flex;gap:10px;font-size:.72rem;color:var(--amber);font-weight:700;font-family:'IBM Plex Mono',monospace;flex-wrap:wrap;}
.story.compact{display:flex;flex-direction:row;}
.story.compact .card-img{width:120px;aspect-ratio:1/1;flex-shrink:0;border-radius:0;}
.story.compact .body{padding:14px;}
.story.compact h3{font-size:.94rem;}
.feed-ad{background:var(--bg-soft);border:1px dashed var(--line);border-radius:18px;padding:20px;text-align:center;color:var(--ink-soft);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;}

/* ===== CATEGORY TILES ===== */
.feed-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.feed-cats a{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 10px;text-align:center;}
.feed-cats a:hover{border-color:var(--amber);}
.feed-cats .ic{font-size:1.1rem;margin-bottom:6px;}
.feed-cats .name{font-size:.76rem;font-weight:700;color:#FFFDF8;}
.feed-cats .count{font-size:.66rem;color:var(--ink-soft);font-family:'IBM Plex Mono',monospace;}
@media(max-width:480px){.feed-cats{grid-template-columns:repeat(2,1fr);}}

/* ===== PAGINATION ===== */
.pg-pagination{display:flex;gap:8px;justify-content:center;margin:28px 0;flex-wrap:wrap;}
.pg-pagination a,.pg-pagination span{padding:9px 15px;border-radius:10px;border:1px solid var(--line);font-size:.85rem;font-weight:700;color:var(--ink-soft);}
.pg-pagination .current{background:var(--amber);color:var(--bg);border-color:var(--amber);}
.pg-pagination a:hover{border-color:var(--amber);color:var(--amber);}

/* ===== SINGLE ARTICLE ===== */
.crumbs{padding:14px 0;font-size:.78rem;color:var(--ink-soft);}
.crumbs .sep{margin:0 6px;opacity:.5;}
.article-head{padding:4px 0 20px;}
.cat-pill{display:inline-block;background:rgba(242,178,92,.15);color:var(--amber);padding:5px 12px;border-radius:999px;font-size:.72rem;font-weight:700;margin-bottom:12px;}
.article-head h1{font-size:clamp(1.5rem,4.4vw,2.1rem);line-height:1.22;margin-bottom:12px;}
.article-head .dek{font-size:.96rem;color:var(--ink-soft);margin-bottom:14px;}
.meta-row{display:flex;flex-wrap:wrap;gap:8px;font-size:.74rem;color:var(--ink-soft);font-family:'IBM Plex Mono',monospace;}

.article-body{font-size:1rem;}
.article-body h2{font-size:1.3rem;margin:32px 0 12px;scroll-margin-top:80px;color:#FFFDF8;}
.article-body h3{font-size:1.06rem;margin:22px 0 8px;scroll-margin-top:80px;color:#FFFDF8;}
.article-body p{margin:0 0 16px;color:var(--ink-soft);}
.article-body ul,.article-body ol{margin:0 0 16px;padding-left:20px;color:var(--ink-soft);}
.article-body li{margin-bottom:6px;}
.article-body strong{color:var(--ink);}
.article-body a{color:var(--amber);text-decoration:underline;}
.article-body img{border-radius:14px;margin:20px 0;}
.article-body blockquote{border-left:3px solid var(--amber);padding:6px 0 6px 20px;margin:24px 0;font-style:italic;color:var(--ink);}
.article-body table{width:100%;border-collapse:collapse;margin:20px 0;font-size:.9rem;}
.article-body th{background:var(--card);color:#FFFDF8;text-align:left;padding:10px 12px;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;}
.article-body td{padding:10px 12px;border-bottom:1px solid var(--line);color:var(--ink-soft);}
@media(max-width:600px){
	.article-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;border:1px solid var(--line);border-radius:10px;}
	.article-body th,.article-body td{white-space:normal;min-width:120px;}
}

.tonight-card{background:var(--card);border:1px solid var(--amber);border-radius:16px;padding:16px 18px;margin:8px 0 22px;}
.tonight-card .lbl{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--amber);margin-bottom:8px;}

.callout{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--amber);border-radius:12px;padding:16px 18px;margin:24px 0;}
.callout.warn{border-left-color:#E88B7A;}
.callout .lbl{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--amber);margin-bottom:8px;}
.callout.warn .lbl{color:#E88B7A;}

.share-row{display:flex;gap:8px;margin:28px 0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.share-row a{width:36px;height:36px;border-radius:10px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:.78rem;color:var(--ink-soft);}
.share-row a:hover{border-color:var(--amber);color:var(--amber);}

.author-box{display:grid;grid-template-columns:52px 1fr;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin:24px 0;}
.author-box .av{width:52px;height:52px;border-radius:50%;background:linear-gradient(150deg,#2A2F52,#1B2440);}
.author-box h4{font-size:.88rem;margin-bottom:3px;color:#FFFDF8;}
.author-box p{font-size:.8rem;color:var(--ink-soft);margin:0;}

/* ===== SIDEBAR WIDGETS ===== */
.sw{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px;}
.sw h2,.sw h3{font-size:.9rem;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid var(--bg-soft);color:#FFFDF8;}
.sw-toc{display:flex;flex-direction:column;gap:2px;font-size:.84rem;}
.sw-toc a{padding:7px 9px;border-radius:8px;color:var(--ink-soft);border-left:2px solid transparent;display:block;}
.sw-toc a:hover{background:var(--bg-soft);color:var(--ink);border-left-color:var(--amber);}
.sw-search{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--bg-soft);}
.sw-search input[type="search"]{flex:1;border:none;padding:9px 11px;font-family:inherit;outline:none;background:transparent;color:var(--ink);width:100%;}
.sw-search button{background:var(--amber);border:none;color:var(--bg);padding:0 12px;cursor:pointer;font-weight:700;}
.sw-nl{background:linear-gradient(160deg,#2A2244,#1B2440);border-color:var(--amber);}
.sw-nl p{font-size:.8rem;color:var(--ink-soft);margin:0 0 10px;}
.sw-nl input[type="email"]{width:100%;padding:9px 11px;border-radius:8px;border:1px solid var(--line);margin-bottom:8px;font-family:inherit;background:var(--bg);color:var(--ink);}
.sw-nl button{width:100%;background:var(--amber);border:none;padding:10px;border-radius:8px;font-weight:800;color:var(--bg);cursor:pointer;}
.sw-rank{display:flex;gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.82rem;color:var(--ink-soft);}
.sw-rank:last-child{border:none;padding-bottom:0;}
.sw-rank b{color:var(--amber);font-family:'IBM Plex Mono',monospace;width:18px;flex-shrink:0;}
.sw-rank a:hover{color:var(--amber);}
.sw-ad{min-height:250px;background:var(--bg-soft);border:1px dashed var(--line);border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;}
.sw ul{list-style:none;padding:0;margin:0;}
.sw ul.sw-cats li{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px dashed var(--line);font-size:.82rem;}
.sw-cats a{color:var(--ink-soft);}
.sw-cats a:hover{color:var(--amber);}
.sw-cats .n{font-family:'IBM Plex Mono',monospace;font-size:.7rem;color:var(--ink-soft);}
.sw-tags{display:flex;flex-wrap:wrap;gap:6px;}
.sw-tags a{background:var(--bg-soft);border:1px solid var(--line);padding:5px 10px;border-radius:999px;font-size:.72rem;font-weight:600;color:var(--ink-soft);}
.sw-tags a:hover{color:var(--amber);border-color:var(--amber);}
.sw-rel{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:.8rem;font-weight:600;color:var(--ink-soft);}
.sw-rel:last-child{border:none;padding-bottom:0;}
.sw-rel .th{width:38px;height:38px;border-radius:8px;background:linear-gradient(150deg,#2A2F52,#1B2440);flex-shrink:0;overflow:hidden;}
.sw-rel .th img{width:100%;height:100%;object-fit:cover;}
.sw-rel a:hover{color:var(--amber);}
/* Default WP widgets fallback (Recent Comments, Archives, Meta, Text) */
.sw select,.sw input[type="text"]{width:100%;padding:9px 11px;border-radius:8px;border:1px solid var(--line);background:var(--bg-soft);color:var(--ink);font-family:inherit;}

/* ===== TRUST STRIP ===== */
.trust{background:var(--bg-soft);padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center;max-width:var(--max);margin:0 auto;padding:0 20px;}
.trust-row .num{font-weight:800;font-size:1.5rem;color:var(--amber);}
.trust-row .lab{font-size:.76rem;color:var(--ink-soft);margin-top:2px;}
@media(max-width:700px){.trust-row{grid-template-columns:repeat(2,1fr);}}

/* ===== COMMENTS ===== */
.comments-area{margin:32px 0;}
.comment-list{list-style:none;padding:0;margin:0;}
.comment-body{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:14px;}
.comment-author{font-weight:700;font-size:.88rem;color:#FFFDF8;}
.comment-metadata{font-size:.72rem;color:var(--ink-soft);margin-left:8px;}
.comment-content p{font-size:.9rem;color:var(--ink-soft);}
.comment-form textarea,.comment-form input{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px;font-family:inherit;background:var(--card);color:var(--ink);margin-bottom:10px;}
.comment-form textarea{min-height:100px;}
.comment-form input[type="submit"]{width:auto;background:var(--amber);color:var(--bg);border:none;padding:11px 24px;border-radius:999px;font-weight:800;cursor:pointer;}

/* ===== FOOTER ===== */
.site-footer{background:#0F1526;color:var(--ink-soft);padding:36px 0 0;}
.f-inner{max-width:var(--max);margin:0 auto;padding:0 20px;}

/* Reset list styling explicitly for every list inside the footer,
   so bullets can never leak through regardless of class matching. */
.site-footer ul{list-style:none !important;margin:0;padding:0;}
.site-footer li{list-style:none !important;}

/* Brand (left) + nav columns (right) */
.footer-top{
	display:grid; grid-template-columns:280px 1fr; gap:40px;
	padding-bottom:28px; margin-bottom:20px; border-bottom:1px solid var(--line);
}
.footer-brand .site-logo{color:#FFFDF8; font-weight:800; font-size:1.15rem; display:flex; align-items:center; gap:8px;}
.footer-desc{font-size:.85rem; color:var(--ink-soft); margin:14px 0 16px; max-width:34ch; line-height:1.6;}
.footer-social{display:flex; gap:10px;}
.footer-social a{
	width:36px; height:36px; border-radius:50%; border:1px solid var(--line);
	display:flex; align-items:center; justify-content:center; font-size:.78rem; color:var(--ink-soft);
}
.footer-social a:hover{background:var(--amber); border-color:var(--amber); color:var(--bg);}

.footer-cols{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
.footer-col h4{color:#FFFDF8;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px;}
.footer-widgets{
	display:grid; grid-template-columns:repeat(2,1fr); gap:28px;
	padding-bottom:28px; margin-bottom:20px; border-bottom:1px solid var(--line);
}

.f-links{display:flex; flex-direction:column; gap:9px; font-size:.85rem;}
.f-links.f-links-inline{flex-direction:row; flex-wrap:wrap; gap:10px 16px;}
.f-links a{color:var(--ink-soft); display:inline-block;}
.f-links a:hover{color:var(--amber); text-decoration:underline;}

@media(max-width:980px){
	.footer-top{grid-template-columns:1fr;}
	.footer-desc{max-width:100%;}
}
@media(max-width:820px){
	.footer-cols{grid-template-columns:repeat(2,1fr); gap:24px 20px;}
}
@media(max-width:560px){
	.footer-cols, .footer-widgets{grid-template-columns:1fr; gap:22px;}
}
.f-disc{font-size:.74rem;opacity:.78;padding:16px 0;border-top:1px solid var(--line);max-width:75ch;}
.f-bottom{font-size:.75rem;opacity:.7;padding:16px 0 90px;}

/* ===== MOBILE APP BAR + ANCHOR AD ===== */
.ad-anchor{position:fixed;left:0;right:0;bottom:0;height:0;z-index:80;}
.tabbar{position:fixed;bottom:0;left:0;right:0;background:#0F1526;border-top:1px solid var(--line);z-index:90;display:flex;justify-content:space-around;padding:8px 0;max-width:var(--max);margin:0 auto;}
.tabbar a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.63rem;font-weight:700;color:var(--ink-soft);padding:6px 10px;min-width:44px;}
.tabbar a.active{color:var(--amber);}
@media(min-width:901px){.tabbar{left:50%;transform:translateX(-50%);border-radius:16px 16px 0 0;}}

/* ===== ALIGNMENT / CORE WP CLASSES (required) ===== */
.alignleft{float:left;margin:0 20px 16px 0;}
.alignright{float:right;margin:0 0 16px 20px;}
.aligncenter{display:block;margin:16px auto;}
.wp-caption{max-width:100%;}
.wp-caption-text{font-size:.78rem;color:var(--ink-soft);margin-top:6px;}
.sticky{border-left:3px solid var(--amber);}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
