:root{--obsidian:#0b0f14;--onyx:#11161d;--graphite:#1a2129;--slate:#2a333e;--pewter:#4a5562;--alabaster:#f7f8f5;--bone:#fff;--pearl:#eef1ec;--ash:#d7dcd3;--ash-soft:#e6e9e2;--emerald-glow:#34f5b5;--emerald:#10b981;--emerald-deep:#059669;--emerald-shadow:#065f46;--emerald-tint:rgba(5,150,105,.08);--emerald-tint-2:rgba(5,150,105,.14);--signal-bright:#79c0ff;--signal:#58a6ff;--signal-deep:#2563eb;--signal-tint:rgba(37,99,235,.05);--alert-ink:#b91c1c;--alert-bg:#fee2e2;--alert-border:#fca5a5;--ink:#0b0f14;--ink-2:#2a333e;--ink-3:#5c6772;--ink-4:#8a929a;--white:#fff;--platinum:#e6e9ec;--silver:#b7bfc8;--steel:#7b8593;--bg:var(--alabaster);--bg-elev:var(--bone);--bg-tinted:var(--pearl);--line:var(--ash);--line-soft:var(--ash-soft);--line-strong:#bac1b5;--focus-ring:var(--emerald-deep);--font-display:"Space Grotesk",ui-sans-serif,system-ui,sans-serif;--font-body:"DM Sans",ui-sans-serif,system-ui,sans-serif;--font-alt:"Instrument Sans",ui-sans-serif,system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--fs-display:64px;--fs-h1:48px;--fs-h2:36px;--fs-h3:24px;--fs-h4:18px;--fs-body-lg:18px;--fs-body:16px;--fs-small:14px;--fs-caption:13px;--fs-eyebrow:12px;--lh-tight:1.05;--lh-snug:1.15;--lh-normal:1.4;--lh-relaxed:1.55;--lh-loose:1.65;--ls-display:-2px;--ls-h1:-1.4px;--ls-h2:-0.8px;--ls-h3:-0.4px;--ls-eyebrow:1.6px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--container-max:1200px;--container-pad:32px;--dur-fast:150ms;--dur-normal:200ms;--dur-slow:250ms;--ease-smooth:cubic-bezier(0.4,0,0.2,1);--ease-out:cubic-bezier(0.22,1,0.36,1);--dur-hero:1600ms;--ease-overshoot:cubic-bezier(0.34,1.2,0.5,1);--shadow-bar:0 1px 0 rgba(11,15,20,.04),0 6px 24px rgba(11,15,20,.06)}[data-surface=dark]{--bg:var(--obsidian);--bg-elev:var(--onyx);--bg-tinted:var(--graphite);--line:var(--graphite);--line-soft:hsla(0,0%,100%,.06);--line-strong:var(--slate);--ink:var(--white);--ink-2:var(--platinum);--ink-3:var(--silver);--ink-4:var(--steel);--focus-ring:var(--emerald-glow)}*{box-sizing:border-box}body,html{margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body.buldok-body{background:var(--bg);color:var(--ink-2);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-relaxed);text-rendering:optimizeLegibility}button{cursor:pointer;font-family:inherit}img{display:block;max-width:100%}ol,ul{list-style:none;margin:0;padding:0}a{color:inherit}:focus-visible{border-radius:4px;outline:2px solid var(--focus-ring);outline-offset:2px}.buldok-container{margin:0 auto;max-width:var(--container-max);padding:0 var(--container-pad)}h1,h2,h3,h4{margin:0}.eyebrow{color:var(--emerald-deep);display:inline-block;font-family:var(--font-display);font-size:var(--fs-eyebrow);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);margin:0 0 var(--s-3);text-transform:uppercase}.h1{font-size:var(--fs-h1);font-weight:var(--fw-bold);letter-spacing:var(--ls-h1);line-height:var(--lh-tight);margin:0 0 var(--s-4)}.h1,.h2{color:var(--ink);font-family:var(--font-display);text-wrap:balance}.h2{font-size:var(--fs-h2);font-weight:var(--fw-semibold);letter-spacing:var(--ls-h2);line-height:var(--lh-snug);margin:0 0 var(--s-3);max-width:24ch}.h2.wide{max-width:none}.h3{font-size:var(--fs-h3);letter-spacing:var(--ls-h3);line-height:1.2}.h3,.h4{color:var(--ink);font-family:var(--font-display);font-weight:var(--fw-semibold);margin:0 0 var(--s-2)}.h4{font-size:var(--fs-h4);line-height:1.25}.lede{color:var(--ink-2);font-family:var(--font-body);font-size:var(--fs-body-lg);line-height:var(--lh-loose);margin:0 0 var(--s-5);max-width:56ch;text-wrap:pretty}.small{font-size:var(--fs-small)}.caption,.small{color:var(--ink-3)}.caption{font-size:var(--fs-caption)}.mono{font-family:var(--font-mono);letter-spacing:.02em}@media (max-width:1023px){:root{--fs-h1:40px;--fs-h2:30px;--container-pad:24px}}@media (max-width:767px){:root{--fs-h1:32px;--fs-h2:24px;--fs-h3:20px;--fs-h4:17px;--fs-body-lg:17px}.h2{max-width:none}}.btn{align-items:center;background:var(--ink);border:1px solid var(--ink);border-radius:var(--radius-md);color:var(--bone);cursor:pointer;display:inline-flex;font-family:var(--font-display);font-size:15px;font-weight:var(--fw-semibold);gap:var(--s-2);justify-content:center;letter-spacing:-.1px;min-height:48px;padding:14px 22px;text-decoration:none;transition:background var(--dur-fast) var(--ease-smooth),border-color var(--dur-fast) var(--ease-smooth),color var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth);white-space:nowrap}.btn:hover{background:var(--emerald-deep);border-color:var(--emerald-deep)}.btn:active{background:var(--emerald-shadow);border-color:var(--emerald-shadow);transform:translateY(1px)}.btn-sm{font-size:14px;min-height:40px;padding:10px 16px}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn-ghost:hover{background:var(--bg-elev);border-color:var(--ink);color:var(--ink)}.btn-ghost:active{background:var(--pearl);color:var(--ink)}.link-arrow{align-items:center;color:var(--ink);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-small);font-weight:var(--fw-semibold);gap:6px;text-decoration:none;transition:color var(--dur-fast) var(--ease-smooth),gap var(--dur-fast) var(--ease-smooth)}.link-arrow:after{content:"→";display:inline-block;transition:transform var(--dur-fast) var(--ease-smooth)}.link-arrow:hover{color:var(--emerald-deep)}.link-arrow:hover:after{transform:translateX(3px)}.section{background:var(--bg);padding:var(--s-9) 0;position:relative}.section.tinted{background:var(--bg-tinted)}.section.elev{background:var(--bg-elev)}[data-bg=alabaster]{background:var(--bg)}[data-bg=bone]{background:var(--bg-elev)}[data-bg=pearl]{background:var(--bg-tinted)}.section-head{margin-bottom:var(--s-7);max-width:720px}@media (max-width:767px){.section{padding:var(--s-7) 0}}.blog-card{background:var(--bone);border:1px solid var(--line);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden;transition:border-color var(--dur-normal) var(--ease-out),transform var(--dur-normal) var(--ease-out)}.blog-card:hover{border-color:var(--ink);transform:translateY(-2px)}.blog-card__image{aspect-ratio:16/9;background:var(--pearl);display:block;overflow:hidden}.blog-card__image img{height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease-out);width:100%}.blog-card:hover .blog-card__image img{transform:scale(1.03)}.blog-card__placeholder{background:var(--pearl);background-image:radial-gradient(circle at 1px 1px,rgba(11,15,20,.05) 1px,transparent 0);background-size:16px 16px;height:100%;width:100%}.blog-card__body{display:flex;flex:1;flex-direction:column;gap:var(--s-2);padding:var(--s-4) var(--s-5) var(--s-5)}.blog-card__tags{display:flex;flex-wrap:wrap;gap:var(--s-2)}.blog-card__tag{background:var(--emerald-tint);border-radius:var(--radius-sm);color:var(--emerald-deep);font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.08em;padding:2px 8px;text-decoration:none;text-transform:uppercase;transition:background var(--dur-fast) var(--ease-smooth)}.blog-card__tag:hover{background:rgba(5,150,105,.16)}.blog-card__title{color:var(--ink);display:block;font-family:var(--font-display);font-size:18px;font-weight:var(--fw-semibold);letter-spacing:-.3px;line-height:1.3;margin:var(--s-1) 0;text-decoration:none}.blog-card__title:hover{color:var(--emerald-deep)}.blog-card__excerpt{color:var(--ink-2);display:-webkit-box;font-size:14px;-webkit-line-clamp:3;line-height:1.55;margin:0;-webkit-box-orient:vertical;overflow:hidden}.blog-card__meta{align-items:center;color:var(--ink-3);display:flex;font-family:var(--font-mono);font-size:11px;gap:var(--s-2);letter-spacing:.02em;margin-top:auto;padding-top:var(--s-3)}.blog-card__sep{color:var(--ink-4)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}