*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg,video,iframe{max-width:100%;height:auto;display:block}a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;transition:color var(--transition)}a:hover,a:focus{color:var(--color-secondary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:1.2;margin:0 0 var(--space-2);color:var(--color-text)}h1{font-size:clamp(2rem,4vw,3rem)}h2{font-size:clamp(1.5rem,3vw,2.25rem)}h3{font-size:clamp(1.25rem,2vw,1.75rem)}p,ul,ol{margin:0 0 var(--space-2)}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal !important}.skip-link{position:absolute;left:-9999px;top:0;background:var(--color-primary);color:#fff;padding:var(--space-1) var(--space-2);z-index:100000}.skip-link:focus{left:var(--space-2);top:var(--space-2);outline:2px solid var(--color-accent)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--space-2)}.site-main{padding:var(--space-5) 0;min-height:50vh}input,select,textarea,button{font:inherit;color:inherit}input[type=text],input[type=email],input[type=search],input[type=url],input[type=tel],textarea{width:100%;padding:.6rem .8rem;border:1px solid var(--color-border);border-radius:var(--radius);background:#fff}button,.search-submit{cursor:pointer;background:var(--color-primary);color:#fff;border:0;padding:.6rem 1.2rem;border-radius:var(--radius);transition:background var(--transition)}button:hover,.search-submit:hover{background:var(--color-secondary)}.post-list{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media (min-width:720px){.post-list{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.post-list{grid-template-columns:repeat(3,1fr)}}.entry-title a{text-decoration:none;color:inherit}.entry-title a:hover{color:var(--color-primary)}.entry-meta{font-size:.875rem;color:var(--color-muted);margin-bottom:var(--space-2)}.page-header{margin-bottom:var(--space-4)}@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}