/* Blog styles. Tokens match index.html so the blog looks like the rest of the site. */
:root{
  --paper:#f4f3ed;--paper-2:#eae6d8;--white:#fffefa;
  --ink:#16302e;--ink-2:#3c5654;--ink-3:#6a817d;
  --coral:#1f4b4c;--coral-2:#163837;--coral-tint:#dceae8;
  --sage:#b4646a;--sage-tint:#f3dfde;
  --gold:#c08a3e;--gold-tint:#efdfc0;
  --line:#d8d2be;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:'Figtree',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --gutter:24px;--r-md:18px;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.06rem;line-height:1.7;-webkit-font-smoothing:antialiased;}
a{color:var(--coral);}
img{max-width:100%;display:block;}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:4px;}
.wrap{max-width:720px;margin:0 auto;padding:0 var(--gutter);}

header.site{position:sticky;top:0;z-index:50;background:rgba(244,243,237,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px var(--gutter);max-width:1140px;margin:0 auto;}
.logo{font-family:var(--serif);font-weight:700;font-size:1.15rem;display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);}
.logo img{width:30px;height:30px;}
.nav-links{display:flex;gap:22px;align-items:center;font-weight:600;font-size:.92rem;}
.nav-links a:not(.btn){color:var(--ink-2);text-decoration:none;}
.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--sans);font-weight:700;font-size:.95rem;line-height:1;padding:14px 22px;border-radius:100px;text-decoration:none;background:var(--coral);color:var(--white);box-shadow:0 4px 0 var(--coral-2);white-space:nowrap;}
.btn:hover{transform:translateY(-1px);}

h1,h2{font-family:var(--serif);font-weight:500;color:var(--ink);letter-spacing:-.012em;}
.article{padding-top:40px;padding-bottom:64px;}
.article h1{font-size:clamp(2rem,5vw,2.8rem);line-height:1.12;margin:6px 0 14px;}
.article h2{font-size:1.55rem;line-height:1.25;margin:44px 0 12px;}
.article p,.article li{color:var(--ink-2);}
.article p{margin:0 0 16px;}
.article ol,.article ul{padding-left:1.3em;margin:0 0 18px;}
.article li{margin-bottom:8px;}
.article strong{color:var(--ink);}
.crumbs{font-size:.85rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin:0;}
.crumbs a{text-decoration:none;}
.byline{font-size:.92rem;color:var(--ink-3);}
.lede{font-size:1.15rem;}

.answer{background:var(--white);border:1px solid var(--line);border-left:5px solid var(--coral);border-radius:var(--r-md);padding:20px 24px;margin:26px 0 30px;}
.answer span,.say span{display:block;font-weight:800;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-2);margin-bottom:6px;}
.answer p{margin:0;color:var(--ink);font-size:1.1rem;}
.say{background:var(--sage-tint);border-radius:var(--r-md);padding:18px 22px;margin:18px 0 22px;font-family:var(--serif);font-size:1.15rem;color:var(--ink);}
.say span{font-family:var(--sans);color:var(--sage);}

.faq{margin-top:48px;}
.faq-item{border-bottom:1px solid var(--line);padding:14px 0;}
.faq-item summary{font-weight:700;cursor:pointer;color:var(--ink);}
.faq-item p{margin:10px 0 0;}

.cta{background:var(--coral);color:var(--white);border-radius:22px;padding:30px 28px;margin:48px 0 8px;}
.cta h2{color:var(--white);margin:0 0 8px;}
.cta p{color:rgba(255,255,255,.86);}
.cta .btn{background:var(--white);color:var(--coral);box-shadow:0 4px 0 rgba(0,0,0,.18);border:0;cursor:pointer;margin-top:4px;}
.cta form{margin-top:18px;}
.cta label{display:block;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.86);margin-bottom:14px;}
.cta input,.cta select{display:block;width:100%;margin-top:6px;padding:13px 14px;border-radius:12px;border:1.5px solid transparent;background:var(--white);color:var(--ink);font:inherit;font-size:1rem;letter-spacing:0;text-transform:none;}
.cta input:focus,.cta select:focus{outline:none;border-color:var(--gold);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.cta .form-error{color:var(--white);margin:12px 0 0;}
.cta .signup-note{font-size:.85rem;margin:14px 0 0;}
.cta .signup-note a{color:var(--white);}

.article .related ul{list-style:none;padding:0;}
.related li{margin:0 0 10px;}
.related a{font-weight:600;}

.article .post-list{list-style:none;padding:0;margin:32px 0;}
.post-list li{margin:0 0 16px;}
.post-list a{display:block;background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:20px 22px;text-decoration:none;}
.post-list a:hover{border-color:var(--coral);}
.post-list h2{font-size:1.3rem;margin:0 0 6px;}
.post-list p{margin:0;font-size:.97rem;}

.site-foot{background:var(--paper-2);border-top:1px solid var(--line);padding:28px 0;font-size:.85rem;color:var(--ink-3);}
.foot-row{max-width:1140px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;}
.site-foot a{color:var(--ink-2);}

@media (max-width:600px){
  .hide-sm{display:none;}
  .logo span{font-size:1rem;}
  .btn{padding:12px 16px;font-size:.88rem;}
  .article h2{font-size:1.35rem;}
  .form-row{grid-template-columns:1fr;gap:0;}
}
