.article-hero{padding:clamp(40px,5vw,64px) clamp(24px,6vw,120px) clamp(40px,6vw,80px);background:var(--cream,#F5F2EA);border-bottom:1px solid color-mix(in oklab,#0E3B2E 18%,transparent);}
.article-hero__inner{max-width:880px;margin:0 auto;}
.article-hero__breadcrumb{font-family:"Fragment Mono",ui-monospace,monospace;font-size:12px;letter-spacing:0.12em;text-transform:uppercase;color:color-mix(in oklab,#0E3B2E 60%,transparent);margin-bottom:32px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.article-hero__breadcrumb a{color:inherit;text-decoration:none;transition:color .2s ease;}
.article-hero__breadcrumb a:hover{color:#2F6B4A;}
.article-hero__breadcrumb span.sep{opacity:.4;}
.article-hero__label{display:inline-flex;align-items:center;gap:12px;font-family:"Fragment Mono",ui-monospace,monospace;font-size:12px;letter-spacing:0.16em;text-transform:uppercase;color:color-mix(in oklab,#0E3B2E 60%,transparent);margin-bottom:24px;}
.article-hero__label::before{content:"";width:24px;height:1px;background:currentColor;}
.article-hero__title{font-family:"Fraunces",Georgia,serif;font-weight:400;font-size:clamp(36px,6vw,72px);line-height:1.02;letter-spacing:-0.025em;color:#0E3B2E;text-wrap:balance;margin-bottom:28px;}
.article-hero__title em{font-style:italic;font-weight:400;color:#2F6B4A;}
.article-hero__lede{font-family:"Fraunces",Georgia,serif;font-weight:400;font-size:clamp(18px,2vw,22px);line-height:1.5;color:color-mix(in oklab,#0E3B2E 82%,transparent);max-width:60ch;margin-bottom:36px;}
.article-hero__meta{display:flex;flex-wrap:wrap;gap:24px;padding-top:24px;border-top:1px dashed color-mix(in oklab,#0E3B2E 22%,transparent);font-family:"Fragment Mono",ui-monospace,monospace;font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:color-mix(in oklab,#0E3B2E 65%,transparent);}
.article-hero__meta span{display:inline-flex;align-items:center;gap:8px;}
.author-intro{max-width:880px;margin:0 auto;padding:40px clamp(24px,6vw,120px) 0;background:var(--cream,#F5F2EA);}
.author-intro__inner{display:flex;align-items:center;gap:16px;padding:18px 22px;background:color-mix(in oklab,#88B097 18%,var(--cream));border-radius:8px;border:1px solid color-mix(in oklab,#0E3B2E 12%,transparent);}
.author-intro__avatar{width:48px;height:48px;flex-shrink:0;border-radius:50%;background:#0E3B2E;color:#B8D66B;display:flex;align-items:center;justify-content:center;font-family:"Fraunces",Georgia,serif;font-size:20px;font-weight:500;}
.author-intro__text{font-size:14px;line-height:1.5;color:color-mix(in oklab,#0E3B2E 85%,transparent);}
.author-intro__text strong{color:#0E3B2E;}
.article-body{padding:clamp(40px,6vw,80px) clamp(24px,6vw,120px) clamp(60px,9vw,120px);background:var(--cream,#F5F2EA);}
.article-body__inner{max-width:720px;margin:0 auto;font-size:17px;line-height:1.7;color:color-mix(in oklab,#0E3B2E 88%,transparent);}
.article-body__inner h2{font-family:"Fraunces",Georgia,serif;font-weight:500;font-size:clamp(28px,3.5vw,38px);line-height:1.15;letter-spacing:-0.015em;color:#0E3B2E;margin-top:56px;margin-bottom:20px;text-wrap:balance;}
.article-body__inner h2 em{font-style:italic;font-weight:400;color:#2F6B4A;}
.article-body__inner h3{font-family:"Fraunces",Georgia,serif;font-weight:500;font-size:clamp(22px,2.5vw,26px);line-height:1.25;color:#0E3B2E;margin-top:40px;margin-bottom:14px;}
.article-body__inner p{margin-bottom:22px;}
.article-body__inner p:last-child{margin-bottom:0;}
.article-body__inner strong{color:#0E3B2E;font-weight:600;}
.article-body__inner em{color:#2F6B4A;}
.article-body__inner a{color:#2F6B4A;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s ease;}
.article-body__inner a:hover{color:#0E3B2E;}
.article-body__inner ul,.article-body__inner ol{margin:20px 0 26px;padding-left:24px;}
.article-body__inner li{margin-bottom:10px;padding-left:4px;}
.article-body__inner ul li::marker{color:#B8D66B;}
.article-body__inner ol li::marker{color:#2F6B4A;font-family:"Fragment Mono",monospace;}
.story{margin:36px 0;padding:28px 32px;background:#fff;border-radius:8px;border-left:3px solid #2F6B4A;box-shadow:0 1px 3px color-mix(in oklab,#0E3B2E 8%,transparent);}
.story__label{display:inline-flex;align-items:center;gap:10px;font-family:"Fragment Mono",ui-monospace,monospace;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:#2F6B4A;margin-bottom:14px;}
.story p:last-child{margin-bottom:0;}
.story p{font-size:16px;}
.callout{margin:36px 0;padding:28px 32px;border-radius:8px;border-left:3px solid #B8D66B;background:color-mix(in oklab,#B8D66B 14%,var(--cream));}
.callout__label{display:inline-flex;align-items:center;gap:10px;font-family:"Fragment Mono",ui-monospace,monospace;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:#0E3B2E;margin-bottom:12px;}
.callout__label i{color:#2F6B4A;}
.callout p:last-child{margin-bottom:0;}
.callout--warn{border-left-color:#d97a6c;background:color-mix(in oklab,#d97a6c 8%,var(--cream));}
.callout--warn .callout__label i{color:#d97a6c;}
.price-table{margin:36px 0;border:1px solid color-mix(in oklab,#0E3B2E 18%,transparent);border-radius:8px;overflow:hidden;background:#fff;}
.price-table__row{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;padding:18px 22px;border-bottom:1px solid color-mix(in oklab,#0E3B2E 12%,transparent);align-items:center;}
.price-table__row:last-child{border-bottom:0;}
.price-table__row--head{background:#0E3B2E;color:#F5F2EA;font-family:"Fragment Mono",ui-monospace,monospace;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;}
.price-table__row .label{font-family:"Fraunces",Georgia,serif;font-size:17px;color:#0E3B2E;font-weight:500;}
.price-table__row .price{font-family:"Fragment Mono",ui-monospace,monospace;font-size:14px;letter-spacing:0.04em;color:#2F6B4A;font-weight:600;}
@media(max-width:560px){.price-table__row{grid-template-columns:1fr;gap:4px;}.price-table__row .price{font-size:13px;}}
blockquote{margin:36px 0;padding:0 0 0 32px;border-left:3px solid #2F6B4A;font-family:"Fraunces",Georgia,serif;font-style:italic;font-size:clamp(20px,2.2vw,24px);line-height:1.4;color:#0E3B2E;}
.article-cta{margin:56px 0;padding:40px 36px;background:#0E3B2E;color:#F5F2EA;border-radius:8px;text-align:center;}
.article-cta__label{font-family:"Fragment Mono",ui-monospace,monospace;font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:#B8D66B;margin-bottom:16px;display:inline-block;}
.article-cta h3{font-family:"Fraunces",Georgia,serif;font-weight:500;font-size:clamp(22px,2.8vw,30px);line-height:1.15;color:#F5F2EA;margin:0 0 12px;}
.article-cta h3 em{color:#B8D66B;font-style:italic;}
.article-cta p{color:color-mix(in oklab,#F5F2EA 78%,transparent);margin-bottom:24px!important;}
.author-box{margin-top:56px;padding:36px;background:#fff;border-radius:8px;border:1px solid color-mix(in oklab,#0E3B2E 18%,transparent);display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;}
@media(max-width:560px){.author-box{grid-template-columns:1fr;text-align:center;}}
.author-box__avatar{width:72px;height:72px;border-radius:50%;background:#0E3B2E;color:#B8D66B;display:flex;align-items:center;justify-content:center;font-family:"Fraunces",Georgia,serif;font-size:28px;font-weight:500;margin:0 auto;}
.author-box__label{font-family:"Fragment Mono",ui-monospace,monospace;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:color-mix(in oklab,#0E3B2E 60%,transparent);margin-bottom:8px;display:block;}
.author-box__name{font-family:"Fraunces",Georgia,serif;font-size:22px;font-weight:500;color:#0E3B2E;margin-bottom:12px;}
.author-box__bio{font-size:15px;line-height:1.6;color:color-mix(in oklab,#0E3B2E 82%,transparent);margin-bottom:12px;}
.author-box__bio:last-child{margin-bottom:0;}
.author-box__links{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px;}
.author-box__links a{font-family:"Fragment Mono",ui-monospace,monospace;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:#2F6B4A;text-decoration:none;display:inline-flex;align-items:center;gap:6px;}
.author-box__links a:hover{color:#0E3B2E;}
.related{padding:clamp(60px,9vw,100px) clamp(24px,6vw,120px);background:#fff;border-top:1px solid color-mix(in oklab,#0E3B2E 18%,transparent);}
.related__inner{max-width:1100px;margin:0 auto;}
.related__head{margin-bottom:36px;}
.related__label{font-family:"Fragment Mono",ui-monospace,monospace;font-size:12px;letter-spacing:0.16em;text-transform:uppercase;color:color-mix(in oklab,#0E3B2E 60%,transparent);margin-bottom:16px;display:inline-flex;align-items:center;gap:12px;}
.related__label::before{content:"";width:24px;height:1px;background:currentColor;}
.related__title{font-family:"Fraunces",Georgia,serif;font-weight:500;font-size:clamp(28px,3.5vw,40px);letter-spacing:-0.015em;color:#0E3B2E;}
.related__title em{font-style:italic;color:#2F6B4A;}
.related__grid{display:grid;grid-template-columns:1fr;gap:24px;}
@media(min-width:720px){.related__grid{grid-template-columns:repeat(3,1fr);}}
.related-card{padding:28px;border:1px solid color-mix(in oklab,#0E3B2E 18%,transparent);border-radius:8px;background:var(--cream,#F5F2EA);transition:transform .25s ease,border-color .25s ease;}
.related-card:hover{transform:translateY(-3px);border-color:#2F6B4A;}
.related-card__cat{font-family:"Fragment Mono",ui-monospace,monospace;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:#2F6B4A;margin-bottom:14px;display:inline-block;}
.related-card h4{font-family:"Fraunces",Georgia,serif;font-weight:500;font-size:20px;line-height:1.25;color:#0E3B2E;margin-bottom:12px;}
.related-card a{color:inherit;text-decoration:none;}
.related-card p{font-size:14px;line-height:1.5;color:color-mix(in oklab,#0E3B2E 75%,transparent);}
