.article-wrapper{max-width:720px;margin:0 auto;padding:100px 24px 80px}.article-meta{font-size:.85rem;color:var(--text-secondary);margin-bottom:12px}.article-meta a{color:var(--coral);text-decoration:none}.article-meta a:hover{text-decoration:underline}.article-wrapper h1{font-family:Fraunces,serif;font-size:2.4rem;color:var(--charcoal);line-height:1.25;margin-bottom:16px}.celebrate{display:inline-block;font-size:.85em;transform-origin:70% 70%;animation:celebrate-pop .6s cubic-bezier(.34,1.56,.64,1) .15s both}@keyframes celebrate-pop{0%{transform:scale(0) rotate(-20deg);opacity:0}60%{transform:scale(1.15) rotate(8deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@media(prefers-reduced-motion:reduce){.celebrate{animation:none}}.article-subtitle{font-size:1.15rem;color:var(--text-secondary);margin-bottom:40px;line-height:1.6}.article-wrapper h2{font-family:Fraunces,serif;font-size:1.5rem;color:var(--charcoal);margin:40px 0 16px}.article-wrapper p{font-size:1rem;margin-bottom:20px}.article-wrapper ul,.article-wrapper ol{margin:0 0 20px 24px;font-size:1rem}.article-wrapper ul{list-style:disc}.article-wrapper ol{list-style:decimal}.article-wrapper li::marker{color:var(--coral-soft)}.article-wrapper li{margin-bottom:8px}.article-wrapper blockquote{border-left:3px solid var(--coral);padding:12px 20px;margin:24px 0;background:var(--coral-bg);border-radius:0 8px 8px 0;font-style:italic;color:var(--text-secondary)}.article-wrapper hr{border:none;border-top:1px solid var(--sand);margin:40px 0}.article-wrapper pre{background:var(--cream);border:1px solid var(--sand);border-radius:10px;padding:16px 20px;margin:24px 0 32px;overflow-x:auto;line-height:1.6}.article-wrapper code{font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Menlo,Consolas,monospace;font-size:.9em}.article-wrapper p code,.article-wrapper li code,.article-wrapper figcaption code{background:var(--coral-bg);color:var(--charcoal);padding:.12em .4em;border-radius:5px;white-space:nowrap}.article-wrapper pre code{background:none;padding:0;color:var(--charcoal);white-space:pre}.article-figure{margin:28px 0 32px}.article-figure a{display:block;border:1px solid var(--sand);border-radius:12px;overflow:hidden;background:var(--cream);box-shadow:0 1px 3px #2a25200a,0 8px 30px #2a25200f;transition:box-shadow .2s ease,transform .2s ease;cursor:zoom-in}.article-figure a:hover{transform:translateY(-2px);box-shadow:0 1px 3px #2a25200f,0 16px 44px #2a25201f}.article-figure img{display:block;width:100%;height:auto}.article-figure figcaption{margin-top:10px;font-size:.82rem;color:var(--text-secondary);line-height:1.5;text-align:center}.lightbox-overlay{position:fixed;inset:0;z-index:1000;background:#2a2520e0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:40px;opacity:0;pointer-events:none;transition:opacity .3s ease}.lightbox-overlay.active{opacity:1;pointer-events:all}.lightbox-img{max-width:100%;max-height:90vh;border-radius:12px;box-shadow:0 32px 80px #0006;transform:scale(.92);transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.lightbox-overlay.active .lightbox-img{transform:scale(1)}.lightbox-close{position:fixed;top:24px;right:24px;width:44px;height:44px;border-radius:50%;background:#fdf8f41f;border:1.5px solid rgba(253,248,244,.2);color:var(--warm-white);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .2s ease;z-index:1001}.lightbox-close:hover{background:#fdf8f438;transform:scale(1.08)}.lightbox-close svg{width:18px;height:18px;stroke:var(--warm-white);stroke-width:2;fill:none}.article-tldr{background:var(--cream);border-left:3px solid var(--coral);border-radius:0 10px 10px 0;padding:22px 26px 20px;margin:0 0 40px}.article-tldr .article-tldr-label{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin-bottom:12px}.article-tldr ul{margin:0 0 0 18px;font-size:.95rem;line-height:1.6}.article-tldr li{margin-bottom:10px}.article-tldr li:last-child{margin-bottom:0}.article-cta{background:var(--cream);border-radius:12px;padding:28px 32px;margin:40px 0;text-align:center}.article-cta p{margin-bottom:12px;font-size:1rem}.article-cta a{display:inline-block;background:var(--coral);color:#fff;padding:10px 28px;border-radius:8px;text-decoration:none;font-weight:600;font-size:.95rem;transition:background .2s}.article-cta a:hover{background:var(--charcoal)}@media(max-width:768px){.blog-nav{padding:0 20px}.article-wrapper{padding:80px 20px 110px}.article-wrapper h1{font-size:1.8rem}.article-wrapper h2{font-size:1.3rem}}
