:root{--bg:#fdfdfb;--text:#1c1c1c;--muted:#666;--accent:#d6451b;--border:#e5e5e0;--max-width:42rem}@media (prefers-color-scheme:dark){:root{--bg:#151515;--text:#eee;--muted:#9a9a9a;--accent:#ff7a50;--border:#2c2c2c}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:1.125rem/1.7 system-ui,-apple-system,Segoe UI,sans-serif}main{max-width:var(--max-width);margin:0 auto;padding:1.5rem 1rem 4rem}a{color:var(--accent)}img{max-width:100%;height:auto}.site-header{max-width:var(--max-width);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin:0 auto;padding:1rem;display:flex}.brand{color:var(--text);font-size:1.35rem;font-weight:800;text-decoration:none}.lens-menu{position:relative}.lens-button{border:1px solid var(--border);min-height:44px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:.5rem;padding:.25rem .75rem .25rem .25rem;font-size:.95rem;font-weight:600;display:flex}.lens-button:hover,.lens-menu.is-open .lens-button{border-color:var(--accent)}.lens-button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.lens-icon{flex:none;width:36px;height:36px}.lens-barrel{fill:var(--text)}.lens-glass{fill:var(--bg)}.lens-light{fill:var(--accent)}.lens-blades path{fill:var(--text);stroke:var(--bg);stroke-width:1.5px;stroke-linejoin:round}.menu-panel{z-index:10;background:var(--bg);border:1px solid var(--border);border-radius:12px;min-width:12rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 12px 32px #00000026}.lens-menu.is-ready .menu-panel{visibility:hidden;opacity:0;transition:opacity .2s,transform .2s,visibility 0s .2s;transform:translateY(-6px)}.lens-menu.is-open .menu-panel{visibility:visible;opacity:1;transition:opacity .2s,transform .2s;transform:none}.menu-panel ul{margin:0;padding:.4rem;list-style:none}.menu-panel a{color:var(--text);border-radius:8px;padding:.75rem 1rem;font-weight:600;text-decoration:none;display:block}.menu-panel a:hover,.menu-panel a:focus-visible{background:var(--border)}.menu-panel a[aria-current=page]{color:var(--accent)}@media (prefers-reduced-motion:reduce){.lens-menu.is-ready .menu-panel,.lens-menu.is-open .menu-panel{transition:none;transform:none}}.site-footer{text-align:center;color:var(--muted);padding:2rem 1rem;font-size:.9rem}.post-list{padding:0;list-style:none}.post-list li{border-bottom:1px solid var(--border);padding:.75rem 0}.post-list li a{font-weight:600;display:block}.post-list time,.meta{color:var(--muted);font-size:.9rem}.post-list p{margin:.25rem 0 0}.post-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:2rem 1.25rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.post-grid a{color:var(--text);text-decoration:none;display:block}.post-grid img{object-fit:contain;background:var(--border);border-radius:8px;width:100%;height:auto;display:block}.post-grid .post-title{margin-top:.6rem;font-weight:600;line-height:1.3;display:block}.post-grid a:hover .post-title{color:var(--accent)}.post-grid time{color:var(--muted);font-size:.85rem}.post-grid .pin-link,.pin-link{min-height:44px;color:var(--accent);text-underline-offset:.2em;align-items:center;gap:.35rem;font-size:.9rem;font-weight:600;display:inline-flex}.post-grid .pin-link{width:fit-content;display:flex}.pin-link:hover{text-decoration:underline}.pin-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.post h1{margin-bottom:.25rem;line-height:1.2}.hero h1{margin:.5rem 0 0;font-size:clamp(1.6rem,6vw,2.4rem);line-height:1.2}.hero-image{border-radius:8px;margin-top:1rem}.video-embed{aspect-ratio:16/9;margin:1.5rem 0;position:relative}.video-embed iframe{border:0;border-radius:8px;width:100%;height:100%;position:absolute;inset:0}.about-portrait{float:right;border-radius:8px;width:40%;max-width:320px;margin:0 0 1rem 1.5rem}@media (width<=480px){.about-portrait{float:none;width:100%;max-width:none;margin:0 0 1rem}}.site-footer .disclosure{max-width:var(--max-width);margin:0 auto .75rem;font-size:.85rem}.contact-list{padding:0;list-style:none}.contact-list li{border-bottom:1px solid var(--border);padding:.5rem 0}.contact-list strong{min-width:6.5rem;display:inline-block}
