.phiz-logo{display:inline-flex;align-items:center;text-decoration:none !important;transition:transform 200ms ease}.phiz-logo:hover{transform:scale(1.02)}.phiz-logo-text{font-family:jetbrains mono,sf mono,fira code,consolas,monospace;font-size:1.5rem;font-weight:800;letter-spacing:-.03em;line-height:1;display:inline-flex;align-items:center;position:relative}.phiz-logo-ph{color:rgba(var(--color-neutral-900),1);transition:color 200ms ease}.dark .phiz-logo-ph{color:rgba(var(--color-neutral-50),1)}.phiz-logo-iz{color:rgba(var(--color-primary-500),1);transition:color 200ms ease}.dark .phiz-logo-iz{color:rgba(var(--color-primary-400),1)}.phiz-logo-pulse{display:inline-block;width:6px;height:6px;margin-left:3px;align-self:flex-end;margin-bottom:.15em;border-radius:50%;background:rgba(var(--color-primary-500),1);position:relative;animation:pulse-beat 2s ease-in-out infinite}.dark .phiz-logo-pulse{background:rgba(var(--color-primary-400),1)}.phiz-logo-pulse::before{content:"";position:absolute;inset:-3px;border-radius:50%;background:rgba(var(--color-primary-500),.3);animation:pulse-ring 2s ease-out infinite}.dark .phiz-logo-pulse::before{background:rgba(var(--color-primary-400),.3)}@keyframes pulse-beat{0%,100%{transform:scale(1);opacity:1}10%{transform:scale(1.3);opacity:1}20%{transform:scale(1);opacity:1}30%{transform:scale(1.15);opacity:1}40%,100%{transform:scale(1);opacity:.85}}@keyframes pulse-ring{0%{transform:scale(1);opacity:.6}50%{transform:scale(1.8);opacity:0}100%{transform:scale(1);opacity:0}}.phiz-logo:hover .phiz-logo-iz{text-shadow:0 0 12px rgba(var(--color-primary-500),.4)}.dark .phiz-logo:hover .phiz-logo-iz{text-shadow:0 0 16px rgba(var(--color-primary-400),.5)}.phiz-logo:hover .phiz-logo-pulse{animation:pulse-beat 1s ease-in-out infinite}.phiz-logo:hover .phiz-logo-pulse::before{animation:pulse-ring 1s ease-out infinite}section[aria-label="phiz taglines"]{width:100vw;position:relative;left:50%;transform:translateX(-50%)}body:has(section[aria-label="phiz taglines"]) header{background:0 0 !important;position:fixed;top:0;left:0;right:0;z-index:100;padding-inline:clamp(1rem,4vw,6rem);padding-top:1rem}body:has(section[aria-label="phiz taglines"]){padding-top:0 !important}body:has(section[aria-label="phiz taglines"]) main{margin-top:0;padding-top:0}#home-recent-posts{width:min(1100px,92vw);margin-inline:auto;padding-block-start:clamp(2.5rem,5vw,5rem);border-top:1px solid transparent}#phiz-hero{width:100%;padding-top:clamp(14vh,18vh,22vh);padding-bottom:clamp(6vh,10vh,14vh);align-items:center;overflow:visible;isolation:isolate}.dark #phiz-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 25%,rgba(255,255,255,.15),transparent 55%),radial-gradient(circle at 80% 10%,rgba(var(--color-primary-400),.28),transparent 55%),linear-gradient(120deg,rgba(0,0,0,.35),transparent 70%);pointer-events:none;z-index:5;opacity:.9}#phiz-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 25%,rgba(var(--color-primary-100),.4),transparent 55%),radial-gradient(circle at 80% 10%,rgba(var(--color-primary-400),.2),transparent 55%),linear-gradient(120deg,rgba(255,255,255,.6),transparent 70%);pointer-events:none;z-index:5;opacity:.85}#phiz-hero canvas{opacity:.9;filter:saturate(.85)}.dark #phiz-hero canvas{opacity:.9}.phiz-hero-shell{position:relative;z-index:10;max-width:min(960px,90vw);display:flex;flex-direction:column;gap:1.25rem;align-items:center;text-align:center}.phiz-hero-kicker{font-size:.85rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(var(--color-neutral-600),.9);margin:0}.dark .phiz-hero-kicker{color:rgba(var(--color-neutral-200),.85)}#phiz-tagline{width:100%;margin:0;text-align:center;line-height:1.05;text-wrap:balance}#phiz-tagline-before,#phiz-tagline-iz,#phiz-tagline-after{line-height:1.12;padding-bottom:.12em}#phiz-tagline-before,#phiz-tagline-after{white-space:normal;overflow:visible}#phiz-tagline-iz{white-space:nowrap;letter-spacing:-.01em}@media(max-width:640px){#phiz-hero{padding-top:18vh;padding-bottom:12vh}.phiz-hero-shell{gap:1rem}#phiz-tagline{text-wrap:pretty}}.phiz-hero-lede{margin:0;font-size:clamp(1rem,1.6vw,1.35rem);line-height:1.6;color:rgba(var(--color-neutral-900),.85)}.dark .phiz-hero-lede{color:rgba(var(--color-neutral-50),.88)}.phiz-hero-ctas{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.phiz-cta{border-radius:999px;padding:.75rem 1.75rem;font-weight:600;border:1px solid transparent;transition:transform 180ms ease,box-shadow 180ms ease,border-color 180ms ease}.phiz-cta:focus-visible{outline:2px solid rgba(var(--color-primary-500),.8);outline-offset:3px}.phiz-cta--primary{background:rgba(var(--color-primary-500),1);color:rgba(17,17,17,.95);box-shadow:0 12px 30px rgba(var(--color-primary-500),.35)}.phiz-cta--primary:hover{transform:translateY(-1px)}.phiz-cta--ghost{border-color:rgba(var(--color-neutral-900),.2);color:rgba(var(--color-neutral-900),.85)}.dark .phiz-cta--ghost{border-color:rgba(var(--color-neutral-50),.35);color:rgba(var(--color-neutral-50),.9)}.phiz-cta--ghost:hover{transform:translateY(-1px);border-color:rgba(var(--color-primary-400),.7)}.phiz-home-description{width:100%;max-width:min(800px,90vw);margin-inline:auto;padding:clamp(2rem,4vw,4rem)0;text-align:center}.phiz-home-description :where(p,li){font-size:clamp(1.05rem,1.3vw,1.25rem);line-height:1.75;color:rgba(var(--color-neutral-700),.95);margin:0}.dark .phiz-home-description :where(p,li){color:rgba(var(--color-neutral-200),.9)}.phiz-home-description :where(p+p){margin-top:1rem}.phiz-home-description strong{font-weight:700;color:rgba(var(--color-neutral-900),1)}.dark .phiz-home-description strong{color:rgba(var(--color-primary-300),1)}.phiz-section-heading{text-align:center;display:flex;flex-direction:column;gap:.4rem;margin-bottom:2.5rem}.phiz-kicker{font-size:.8rem;letter-spacing:.35em;text-transform:uppercase;color:rgba(var(--color-primary-300),.95);margin:0}.phiz-section-subtitle{max-width:48ch;margin:0 auto;font-size:1rem;color:rgba(var(--color-neutral-600),.95)}.dark .phiz-section-subtitle{color:rgba(var(--color-neutral-200),.9)}.phiz-posts-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.phiz-post-card{position:relative;background:rgba(var(--color-neutral-100),.95);border-radius:16px;border:none;padding:1.75rem;height:100%;overflow:hidden;transition:transform 220ms ease,box-shadow 220ms ease;box-shadow:0 1px 2px rgba(0,0,0,4%),0 4px 12px rgba(0,0,0,6%)}.dark .phiz-post-card{background:rgba(var(--color-neutral-800),.6);box-shadow:0 1px 2px rgba(0,0,0,.15),0 8px 24px rgba(0,0,0,.25)}.phiz-post-card:hover{transform:translateY(-4px);box-shadow:0 4px 8px rgba(0,0,0,6%),0 12px 32px rgba(0,0,0,.12),0 0 0 1px rgba(var(--color-primary-500),.4)}.dark .phiz-post-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.2),0 16px 48px rgba(0,0,0,.35),0 0 0 1px rgba(var(--color-primary-400),.5)}.phiz-post-card article{margin:0;max-width:none;display:flex;flex-direction:column;gap:.85rem}.phiz-post-card article>div:first-child{width:100%;padding:0 !important;margin-bottom:1rem}.phiz-post-card article h3{font-size:1.4rem;color:rgba(var(--color-neutral-900),.95)}.dark .phiz-post-card article h3{color:rgba(var(--color-neutral-50),.95)}.phiz-post-card .text-sm{color:rgba(var(--color-neutral-600),.9)}.dark .phiz-post-card .text-sm{color:rgba(var(--color-neutral-200),.8)}.phiz-post-card img{border-radius:14px;width:100%;height:auto;object-fit:cover}.phiz-empty-state{text-align:center;margin-top:2rem;opacity:.85}.toc a{background:0 0 !important;text-decoration:none;transition:color 150ms ease}.toc a:hover,.toc a:focus{background:0 0 !important;color:rgba(var(--color-primary-500),1) !important;text-decoration:none}.dark .toc a:hover,.dark .toc a:focus{color:rgba(var(--color-primary-400),1) !important}.toc a:hover::after,.toc a:focus::after{display:none}article header h1{font-size:clamp(1.4rem,4vw,2.25rem);line-height:1.15;text-wrap:balance}@media(max-width:640px){article header h1{font-size:1.5rem;line-height:1.2}}@media(max-width:1024px){.toc{font-size:.9rem;padding:1rem;background:rgba(var(--color-neutral-100),.5);border-radius:12px;margin-bottom:1.5rem}.dark .toc{background:rgba(var(--color-neutral-800),.5)}}