@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,500&family=Public+Sans:wght@400;500;600;700&display=swap');
:root{
  --navy:#0d3a78; --navy-deep:#0a2c5c; --navy-ink:#132a4a;
  --green:#5aa826; --green-dark:#4a8f1e; --green-soft:#eef6e6;
  --blue:#2a6cb0; --blue-soft:#e8f1fa; --cream:#fafcf8; --white:#fff;
  --text:#2c3a4d; --text-soft:#5b6b7e; --line:#e3e9e1; --radius:14px;
  --shadow:0 10px 40px rgba(13,58,120,.10);
  --font-display:'Lora',Georgia,serif; --font-body:'Public Sans',-apple-system,Segoe UI,sans-serif;
}
body.single-post{font-family:var(--font-body);background:#fff}
.btn{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:15px;border-radius:10px;padding:13px 22px;border:none;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,color .15s ease;font-family:var(--font-body);text-decoration:none !important}
.btn:hover{transform:translateY(-1px)}
.btn-green{background:var(--green);color:#fff !important;box-shadow:0 4px 14px rgba(90,168,38,.35)}
.btn-green:hover{background:var(--green-dark);color:#fff !important}

.post-hero{position:relative;color:#fff;padding:100px 24px 70px;text-align:center;background:linear-gradient(115deg,var(--navy-deep) 0%,var(--navy) 55%,#155089 100%);background-size:cover;background-position:center}
.post-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,44,92,.55),rgba(10,44,92,.85));z-index:0}
.post-hero-inner{position:relative;z-index:1;max-width:1440px;margin:0 auto}
.post-category{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.18);padding:6px 14px;border-radius:99px;margin-bottom:18px}
.post-hero h1{font-family:var(--font-display);color:#fff;font-size:clamp(28px,4vw,44px);margin:0 0 16px;line-height:1.25}
.post-meta-top{font-size:14px;color:rgba(255,255,255,.8)}
.post-back-link{display:inline-block;margin-bottom:20px;font-size:14px;color:rgba(255,255,255,.85);text-decoration:none}
.post-back-link:hover{color:#fff}

.post-body-wrap{max-width:1440px;margin:0 auto;padding:64px 24px;display:flex;gap:56px;align-items:flex-start}\n.post-main{flex:1;min-width:0}
.post-body{font-size:17.5px;line-height:1.8;color:var(--text)}
.post-body p{margin:0 0 24px}
.post-body h2{font-family:var(--font-display);color:var(--navy-ink);font-size:28px;margin:44px 0 18px}
.post-body h3{font-family:var(--font-display);color:var(--navy-ink);font-size:22px;margin:36px 0 14px}
.post-body a{color:var(--green-dark);text-decoration:underline}
.post-body a:hover{color:var(--green)}
.post-body ul,.post-body ol{margin:0 0 24px;padding-left:24px}
.post-body li{margin-bottom:10px}
.post-body blockquote{border-left:3px solid var(--green);padding:6px 0 6px 24px;margin:32px 0;font-family:var(--font-display);font-style:italic;font-size:20px;color:var(--navy-ink)}
.post-body img{border-radius:var(--radius);box-shadow:var(--shadow);max-width:100%;height:auto;margin:8px 0}
.post-body figure{margin:32px 0}
.post-body figcaption{font-size:13px;color:var(--text-soft);text-align:center;margin-top:8px}


.post-cta{background:linear-gradient(115deg,var(--green-dark),var(--green));color:#fff;text-align:center;padding:64px 24px;margin-top:20px}
.post-cta h2{color:#fff;font-family:var(--font-display);font-size:clamp(24px,2.8vw,32px);margin:0 0 14px}
.post-cta p{color:rgba(255,255,255,.92);margin:0 0 26px}
.post-cta .btn{background:#fff;color:var(--green-dark) !important;font-size:16px;padding:15px 28px}
.post-cta .btn:hover{background:var(--cream) !important}

.post-sidebar{width:320px;flex-shrink:0;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:28px;position:sticky;top:160px}
.post-sidebar-title{font-family:var(--font-display);font-size:19px;color:var(--navy-ink);margin:0 0 18px}
.post-sidebar-list{list-style:none;margin:0;padding:0}
.post-sidebar-list li{padding:14px 0;border-top:1px solid var(--line)}
.post-sidebar-list li:first-child{border-top:none;padding-top:0}
.post-sidebar-list a{display:block;color:var(--navy-ink);font-weight:600;font-size:14.5px;line-height:1.4;text-decoration:none;margin-bottom:4px}
.post-sidebar-list a:hover{color:var(--green-dark)}
.post-sidebar-date{font-size:12px;color:var(--text-soft)}

@media(max-width:900px){
  .post-body-wrap{flex-direction:column}
  .post-sidebar{width:100%;position:static;top:auto}
}
@media(max-width:640px){
  .post-hero{padding:70px 20px 50px}
  .post-body-wrap{padding:44px 20px}
  .post-body{font-size:16.5px}
}
.post-author-box{display:flex;align-items:center;gap:20px;margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}
.post-author-photo{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--green-soft)}
.post-author-photo-placeholder{width:72px;height:72px;border-radius:50%;flex-shrink:0;background:var(--green-soft);border:2px dashed var(--line);display:flex;align-items:center;justify-content:center}
.post-author-photo-placeholder svg{width:28px;height:28px;stroke:var(--text-soft);opacity:.5}
.post-author-info{min-width:0}
.post-author-name{font-family:var(--font-display);font-size:17px;color:var(--navy-ink);font-weight:600;margin:0 0 4px}
.post-author-bio{font-size:14px;color:var(--text-soft);line-height:1.5;margin:0}
body.single-post #wrap_all{overflow:visible}
body.single-post{overflow:visible}
