@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");*,:after,:before{box-sizing:border-box}body,html{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-body);margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--teal-700);text-decoration:underline;text-underline-offset:2px;transition:color .15s ease}a:hover{color:var(--teal-900)}img{display:block;height:auto;max-width:100%}.bfp-header{background:var(--paper);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:50}.bfp-header__inner{align-items:center;display:flex;gap:32px;margin:0 auto;max-width:var(--column-wide);padding:18px 24px}.bfp-header__logo img{height:28px;width:auto}.bfp-header__nav{color:var(--ink-soft);display:flex;flex:1;font-family:var(--font-mono);font-size:var(--text-xs);gap:24px;letter-spacing:1.5px;text-transform:uppercase}.bfp-header__nav a{color:var(--ink-soft);text-decoration:none}.bfp-header__nav a:hover,.bfp-header__nav a[aria-current=true]{color:var(--teal-700)}.bfp-header__back{color:var(--ink-soft);font-size:var(--text-sm);text-decoration:none}.bfp-header__back:hover{color:var(--teal-700)}.bfp-header__search{color:var(--ink-faint);font-family:var(--font-mono);font-size:var(--text-xs);margin-left:auto}.bfp-listing{margin:0 auto;max-width:var(--column-wide);padding:var(--space-section) 24px}.bfp-featured{border-bottom:1px solid var(--rule);margin-bottom:var(--space-section);padding-bottom:var(--space-block)}.bfp-featured__chip{background:var(--teal-50);border:1px solid var(--teal-500);color:var(--teal-700);display:inline-block;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:3px;margin-bottom:24px;padding:6px 12px;text-transform:uppercase}.bfp-featured__title{color:var(--ink);font-size:var(--text-hero);font-weight:800;line-height:var(--leading-tight);margin:0 0 18px;max-width:920px}.bfp-featured__meta{color:var(--ink-soft);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.5px;margin-bottom:32px}.bfp-featured__cover{aspect-ratio:16/9;background:var(--paper-dim);margin-bottom:32px;overflow:hidden}.bfp-featured__cover img{height:100%;object-fit:cover;width:100%}.bfp-section-title{border-bottom:2px solid var(--ink);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:2.5px;margin:0 0 24px;padding-bottom:12px;text-transform:uppercase}.bfp-grid{display:grid;gap:var(--space-card);grid-template-columns:repeat(3,1fr);margin-bottom:var(--space-block)}.bfp-card{background:var(--paper);border:1px solid var(--rule);color:inherit;display:flex;flex-direction:column;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}.bfp-card:hover{border-color:var(--teal-500);box-shadow:var(--shadow-card)}.bfp-card--skeleton{background:var(--paper-dim);border-color:var(--rule-soft);cursor:default;pointer-events:none}.bfp-card--skeleton:hover{border-color:var(--rule-soft);box-shadow:none}.bfp-card--skeleton .bfp-card__cover{background:var(--rule)}.bfp-card--skeleton .bfp-card__chip,.bfp-card--skeleton .bfp-card__meta,.bfp-card--skeleton .bfp-card__title{background:var(--rule);border:0;border-radius:2px;color:transparent;display:block}.bfp-card--skeleton .bfp-card__chip{height:16px;width:80px}.bfp-card--skeleton .bfp-card__title{height:44px}.bfp-card--skeleton .bfp-card__meta{height:12px;width:120px}.bfp-card__cover{aspect-ratio:4/3;background:var(--paper-dim);overflow:hidden}.bfp-card__cover img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.bfp-card:hover .bfp-card__cover img{transform:scale(1.03)}.bfp-card__body{display:flex;flex:1;flex-direction:column;gap:12px;padding:20px 24px 24px}.bfp-card__chip{align-self:flex-start;background:var(--teal-50);color:var(--teal-700);display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:1.5px;padding:4px 8px;text-transform:uppercase}.bfp-card__title{color:var(--ink);flex:1;font-size:19px;font-weight:700;line-height:1.3;margin:0}.bfp-card__meta{color:var(--ink-soft);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.3px}.bfp-pagination{padding:32px 0;text-align:center}.bfp-post-shell{margin:0 auto;max-width:var(--column-wide);padding:var(--space-block) 24px}.bfp-post__head{margin:0 auto var(--space-block);max-width:880px;padding-top:24px}.bfp-post__meta{color:var(--ink-soft);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:1px;margin-bottom:24px;text-transform:uppercase}.bfp-post__meta .bfp-meta-dot{color:var(--ink-faint);margin:0 8px}.bfp-post__title{color:var(--ink);font-size:var(--text-h1);font-weight:800;line-height:var(--leading-tight);margin:0 0 24px}.bfp-post__lead{color:var(--ink-soft);font-size:var(--text-lg);font-style:italic;line-height:1.5;margin:0 0 32px;max-width:720px}.bfp-post__byline{color:var(--ink);font-size:var(--text-sm);margin-bottom:32px}.bfp-post__cover{aspect-ratio:16/9;background:var(--paper-dim);margin:0 auto var(--space-block);max-width:var(--column-wide);overflow:hidden}.bfp-post__cover img{height:100%;object-fit:cover;width:100%}.bfp-post__rule{border:0;border-top:3px solid var(--teal-500);margin:0 auto var(--space-block);max-width:120px}.bfp-post__body{color:var(--ink);font-size:var(--text-base);line-height:var(--leading-body);margin:0 auto;max-width:var(--column-prose)}.bfp-post__body>*+*{margin-top:var(--space-para)}.bfp-post__body h2{font-size:var(--text-h2);line-height:1.2;margin-top:var(--space-block)}.bfp-post__body h2,.bfp-post__body h3{color:var(--ink);font-weight:700;margin-bottom:var(--space-line)}.bfp-post__body h3{font-size:var(--text-lg);line-height:1.3;margin-top:32px}.bfp-post__body p{margin:0 0 var(--space-para)}.bfp-post__body a{color:var(--teal-700);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.bfp-post__body strong{color:var(--ink);font-weight:700}.bfp-post__body blockquote{background:var(--paper-dim);border-left:3px solid var(--teal-500);color:var(--ink);font-size:16px;font-style:italic;margin:32px 0;padding:20px 24px}.bfp-post__body blockquote p{margin:0}.bfp-post__body ol,.bfp-post__body ul{margin:var(--space-para) 0;padding-left:24px}.bfp-post__body li{margin-bottom:var(--space-line)}.bfp-post__body code{background:var(--teal-50);border-radius:3px;color:var(--teal-900);font-family:var(--font-mono);font-size:.92em;padding:2px 6px}.bfp-post__body pre{background:var(--ink);border-radius:var(--radius);color:var(--paper);font-family:var(--font-mono);font-size:var(--text-sm);overflow-x:auto;padding:20px 24px}.bfp-post__body pre code{background:transparent;color:inherit;padding:0}.bfp-post__body img{height:auto;margin:32px 0;max-width:100%}.bfp-post__body figure{margin:32px 0}.bfp-post__body figcaption{color:var(--ink-soft);font-size:var(--text-xs);font-style:italic;margin-top:8px;text-align:center}.bfp-post__body table{border-collapse:collapse;font-size:var(--text-sm);margin:var(--space-block) 0;width:100%}.bfp-post__body td,.bfp-post__body th{border-bottom:1px solid var(--rule);padding:12px 16px;text-align:left}.bfp-post__body th{background:var(--paper-dim);border-bottom-color:var(--ink);font-weight:700}.bfp-author{align-items:center;background:var(--paper-dim);border:1px solid var(--rule);display:grid;gap:20px;grid-template-columns:64px 1fr;margin:var(--space-section) auto var(--space-block);max-width:var(--column-prose);padding:28px 32px}.bfp-author__avatar{background:var(--paper-alt);border-radius:50%;height:64px;object-fit:cover;width:64px}.bfp-author__byline{color:var(--teal-700);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:2px;margin-bottom:4px;text-transform:uppercase}.bfp-author__name{color:var(--ink);font-size:var(--text-lg);font-weight:700;margin:0 0 4px}.bfp-author__role{margin:0 0 8px}.bfp-author__bio,.bfp-author__role{color:var(--ink-soft);font-size:var(--text-sm)}.bfp-author__bio{line-height:1.5;margin:0}.bfp-related{margin:var(--space-section) auto 0;max-width:var(--column-wide)}.bfp-related__title{border-bottom:2px solid var(--ink);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:2.5px;margin:0 0 24px;padding-bottom:12px;text-transform:uppercase}.bfp-footer{background:var(--paper-dim);border-top:1px solid var(--rule);margin-top:var(--space-section);padding:48px 24px}.bfp-footer__inner{align-items:center;color:var(--ink-soft);display:flex;flex-wrap:wrap;font-family:var(--font-mono);font-size:var(--text-xs);gap:32px;letter-spacing:.5px;margin:0 auto;max-width:var(--column-wide)}.bfp-footer__logo img{height:32px;opacity:.7;width:auto}.bfp-footer__links{display:flex;gap:24px}.bfp-footer__links a{color:var(--ink-soft);text-decoration:none}.bfp-footer__links a:hover{color:var(--teal-700)}.bfp-btn{background:var(--teal-500);border:1px solid var(--teal-500);color:var(--paper);cursor:pointer;display:inline-block;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;letter-spacing:.5px;padding:12px 24px;text-decoration:none;transition:background .15s ease,border-color .15s ease}.bfp-btn:hover{background:var(--teal-700);border-color:var(--teal-700);color:var(--paper)}.bfp-btn--ghost{background:var(--paper);color:var(--teal-700)}.bfp-btn--ghost:hover{background:var(--teal-50);color:var(--teal-900)}@media (max-width:1199px){.bfp-grid{grid-template-columns:repeat(2,1fr)}.bfp-featured__title{font-size:42px}.bfp-post__title{font-size:38px}}@media (max-width:767px){.bfp-listing,.bfp-post-shell{padding:32px 18px}.bfp-header__inner{flex-wrap:wrap;gap:16px}.bfp-header__nav{flex-basis:100%;order:3;overflow-x:auto;padding-bottom:4px;white-space:nowrap}.bfp-header__search{display:none}.bfp-featured__title{font-size:34px}.bfp-featured__cover{aspect-ratio:4/3}.bfp-post__title{font-size:32px}.bfp-post__lead{font-size:18px}.bfp-post__body h2{font-size:26px}.bfp-grid{gap:24px}.bfp-author,.bfp-grid{grid-template-columns:1fr}.bfp-author{text-align:center}.bfp-author__avatar{margin:0 auto}}