/* Shared blog stylesheet — used by /blog/index.html and individual post pages. */
:root{--bg:#F6F2EC;--bg-2:#EFEAE2;--ink:#1A1410;--ink-2:#5A4F48;--ink-3:#8A7E76;--line:#D8CFC4;--plum:#4A2C63;--link:#6B3F8A;--paper:#FAF7F2;--radius-card:18px;--radius-btn:999px;}
*{box-sizing:border-box;margin:0;padding:0;}
html,body{background:var(--bg);color:var(--ink);font-family:'Nunito Sans',-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;}
a{color:var(--link);text-decoration:none;}a:hover{text-decoration:underline;}
img{max-width:100%;height:auto;display:block;}
.container{max-width:780px;margin:0 auto;padding:0 40px;}
.container-wide{max-width:1080px;margin:0 auto;padding:0 40px;}
@media(max-width:620px){.container,.container-wide{padding:0 22px;}}
.skip-link{position:absolute;left:-9999px;}.skip-link:focus-visible{left:16px;top:16px;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:6px;z-index:100;}

/* Header / nav (matches site) */
.site-header{background:var(--bg);border-bottom:1px solid var(--line);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:20px 40px;max-width:1180px;margin:0 auto;}
@media(max-width:620px){.nav-inner{padding:20px 22px;}}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;}
.brand-badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:var(--ink);color:#FFF;flex-shrink:0;}
.brand-badge svg{width:20px;height:23px;display:block;}
.brand-text{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:500;letter-spacing:-0.01em;}
.brand-text em{font-style:italic;color:var(--plum);font-weight:500;}
.nav-links{display:flex;align-items:center;gap:28px;font-size:14px;}
.nav-links a{color:var(--ink-2);font-weight:600;}.nav-links a:hover{color:var(--link);text-decoration:none;}
.nav-links a.btn{background:var(--ink);color:#FFF;padding:10px 18px;border-radius:999px;font-size:13px;}.nav-links a.btn:hover{background:var(--plum);}
.nav-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:10px;width:44px;height:44px;padding:0;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:var(--ink);}
.nav-toggle .bar{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .22s ease,opacity .22s ease;}
.nav-toggle[aria-expanded="true"] .bar:nth-child(1){transform:translateY(6px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] .bar:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] .bar:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
@media(max-width:820px){.nav-inner{position:relative;}.nav-toggle{display:inline-flex;}.nav-links{position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:0 24px;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease,box-shadow .3s ease;z-index:60;}.nav-links.is-open{max-height:560px;padding:6px 24px 18px;box-shadow:0 14px 28px rgba(26,20,16,0.10);}.nav-links a{padding:15px 4px;border-bottom:1px solid var(--line);font-size:15px;}.nav-links a.btn{margin-top:14px;text-align:center;border-bottom:none;padding:13px 22px;}}

.breadcrumb{background:var(--bg-2);border-bottom:1px solid var(--line);padding:12px 0;font-size:13px;color:var(--ink-2);}
.breadcrumb a{color:var(--ink-2);}.breadcrumb .bc-sep{color:var(--ink-3);margin:0 8px;}.breadcrumb .bc-current{color:var(--ink);font-weight:600;}

/* Blog listing */
.blog-hero{padding:72px 0 28px;text-align:center;}
.blog-hero .eyebrow{display:inline-block;font-size:11.5px;letter-spacing:0.18em;text-transform:uppercase;color:var(--plum);font-weight:700;margin-bottom:16px;}
.blog-hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(40px,6vw,68px);font-weight:300;line-height:1.05;letter-spacing:-0.01em;margin-bottom:18px;}
.blog-hero h1 em{font-style:italic;font-weight:500;color:var(--plum);}
.blog-hero p{font-size:18px;color:var(--ink-2);max-width:560px;margin:0 auto;}

.post-list{padding:32px 0 96px;}
.post-card{display:block;background:#FFF;border:1px solid var(--line);border-radius:var(--radius-card);padding:32px 32px;margin-bottom:18px;color:var(--ink);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.post-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px -20px rgba(26,20,16,0.18);border-color:var(--plum);text-decoration:none;}
.post-card .post-meta{display:flex;gap:14px;align-items:center;font-size:12px;color:var(--ink-3);font-weight:600;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:12px;}
.post-card .post-meta .post-tag{background:var(--bg-2);color:var(--plum);padding:3px 10px;border-radius:999px;letter-spacing:0.06em;}
.post-card h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:500;line-height:1.2;margin-bottom:10px;color:var(--ink);}
.post-card h2 em{font-style:italic;color:var(--plum);}
.post-card p{font-size:15.5px;color:var(--ink-2);line-height:1.55;margin-bottom:14px;}
.post-card .post-cta{font-size:13.5px;font-weight:700;color:var(--plum);letter-spacing:0.02em;}

/* Post page */
.post-hero{padding:60px 0 18px;text-align:center;}
.post-hero .eyebrow{display:inline-block;font-size:11.5px;letter-spacing:0.18em;text-transform:uppercase;color:var(--plum);font-weight:700;margin-bottom:14px;}
.post-hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(36px,5.5vw,58px);font-weight:400;line-height:1.1;letter-spacing:-0.01em;margin-bottom:16px;}
.post-hero h1 em{font-style:italic;color:var(--plum);}
.post-meta-line{font-size:13px;color:var(--ink-3);font-weight:600;letter-spacing:0.04em;}
.post-meta-line .post-tag{background:var(--bg-2);color:var(--plum);padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:0.06em;font-size:11px;margin-right:8px;}

.post-body{padding:30px 0 60px;}
.post-body p{font-size:17px;color:var(--ink-2);margin-bottom:20px;line-height:1.7;}
.post-body h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:500;color:var(--ink);margin:36px 0 14px;line-height:1.2;}
.post-body h2 em{font-style:italic;color:var(--plum);}
.post-body h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:500;color:var(--ink);margin:24px 0 10px;}
.post-body strong{color:var(--ink);font-weight:700;}
.post-body em{font-style:italic;}
.post-body ul,.post-body ol{padding-left:22px;margin-bottom:20px;color:var(--ink-2);font-size:17px;line-height:1.7;}
.post-body li{margin-bottom:8px;}
.post-body blockquote{border-left:3px solid var(--plum);background:var(--paper);padding:18px 24px;margin:24px 0;font-style:italic;color:var(--ink-2);border-radius:0 12px 12px 0;font-size:18px;line-height:1.55;}
.post-body a{color:var(--link);font-weight:600;}
.post-body a:hover{color:var(--plum);}

.post-cta-block{background:linear-gradient(135deg,#4A2C63 0%,#2F1A43 100%);color:#FAF6F0;border-radius:var(--radius-card);padding:36px 36px;margin:48px 0 32px;text-align:center;}
.post-cta-block h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;font-weight:500;color:#FFF;margin-bottom:10px;line-height:1.2;}
.post-cta-block h3 em{font-style:italic;color:#E5C7B8;}
.post-cta-block p{color:#D8CBE5;font-size:15px;margin-bottom:20px;}
.post-cta-block .actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.post-cta-block a{display:inline-block;padding:13px 26px;border-radius:999px;font-size:14px;font-weight:700;text-decoration:none;letter-spacing:0.02em;}
.post-cta-block a.btn-cream{background:#FAF6F0;color:var(--ink);}
.post-cta-block a.btn-cream:hover{background:#FFF;text-decoration:none;}
.post-cta-block a.btn-ghost{border:1px solid #5A4F48;color:#FAF6F0;}
.post-cta-block a.btn-ghost:hover{border-color:#FFF;background:rgba(255,255,255,0.06);text-decoration:none;}

.post-footer-nav{padding:32px 0 64px;border-top:1px solid var(--line);margin-top:24px;}
.post-footer-nav .r-label{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-3);font-weight:700;margin-bottom:14px;}
.post-footer-nav .r-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
@media(max-width:620px){.post-footer-nav .r-grid{grid-template-columns:1fr;}}
.post-footer-nav a{display:block;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:18px 22px;color:var(--ink);font-weight:600;font-size:14.5px;}
.post-footer-nav a:hover{background:#FFF;text-decoration:none;border-color:var(--ink-3);}
.post-footer-nav a span{display:block;font-size:11.5px;color:var(--ink-3);font-weight:700;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:4px;}

/* Footer */
.site-footer{background:var(--ink);color:#BFB3A8;padding:32px 0 24px;font-size:13px;text-align:center;line-height:1.6;}
.site-footer .footer-disclosure{color:#8A7E76;font-size:12px;max-width:760px;margin:0 auto 14px;padding:0 22px;}
.site-footer a{color:#D8CFC4;}.site-footer a:hover{color:#FFF;}

/* Inline FAQ blocks */
.post-faq{margin:40px 0;padding:32px 0;border-top:1px solid #D8CFC4;border-bottom:1px solid #D8CFC4;}
.post-faq h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:400;margin-bottom:20px;}
.post-faq h2 em{font-style:italic;color:#4A2C63;}
.post-faq-item{margin-bottom:20px;padding-bottom:16px;border-bottom:1px dashed #D8CFC4;}
.post-faq-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none;}
.post-faq-item h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;font-weight:500;line-height:1.3;margin-bottom:8px;color:#1A1410;}
.post-faq-item p{color:#5A4F48;font-size:16px;line-height:1.6;}
