/* Chrome shared by every page of the design export: base resets, focus
   states, the fixed nav's responsive behaviour and the shared keyframes.
   Enqueued on templates outside the designed page set (404, search, posts)
   so the header and type still behave there. The designed pages load their
   own complete stylesheet instead of this one. */

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:#FFFFFF;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
a:hover{color:#0057FF;}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;}
img{max-width:100%;}
::selection{background:#0057FF;color:#FFFFFF;}
@keyframes bw-spark-core{0%,100%{transform:rotate(45deg) scale(1);opacity:1}50%{transform:rotate(45deg) scale(1.28);opacity:.85}}
@keyframes bw-spark-arm{0%,100%{transform:translateX(-50%) scaleY(1);opacity:1}50%{transform:translateX(-50%) scaleY(1.3);opacity:.8}}
@keyframes bw-spark-armh{0%,100%{transform:translateY(-50%) scaleX(1);opacity:1}50%{transform:translateY(-50%) scaleX(1.3);opacity:.8}}
@keyframes bw-spark-sat{0%,100%{transform:rotate(45deg) scale(.7);opacity:.5}40%{transform:rotate(45deg) scale(1.35);opacity:1}70%{transform:rotate(45deg) scale(.9);opacity:.7}}
@media (prefers-reduced-motion: reduce){ [data-ai-spark] span{animation:none !important;} }
@keyframes bw-pulse{0%{transform:scale(1);opacity:.55}70%,100%{transform:scale(2.6);opacity:0}}
/* Mobile nav must be correct BEFORE the logic mounts: the markup ships the
     desktop nav visible, so a slow phone would flash a broken nav (or keep it
     if mount is delayed). !important so it cannot lose to the inline defaults. */
  @media (max-width:1119px){
    [data-nav-links]{display:none !important;}
    [data-burger]{display:flex !important;}
  }

/* Focus styling varies slightly per designed page; this is the common form,
   included so keyboard focus stays visible on the fallback templates too. */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #0057FF;outline-offset:3px;}
[data-ground="dark"] a:focus-visible,[data-ground="dark"] button:focus-visible,header a:focus-visible,header button:focus-visible{outline-color:#FFFFFF;}

/* Base type for pages outside the designed set. */
p{font-family:'Albert Sans',Helvetica,Arial,sans-serif;font-weight:400;}
h1,h2,h3{font-weight:440;}
