*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--color-background)}
body{min-height:100svh;margin:0;background:var(--color-background);color:var(--color-foreground);font-family:var(--font-primary);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
body:has(dialog[open]),html:has(dialog[open]){overflow:hidden}
img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit}
h1,h2,h3,h4,p{margin-block-start:0}
h1,h2{line-height:1;letter-spacing:-.04em;text-wrap:balance}
h3,h4{line-height:1.16;letter-spacing:-.02em;text-wrap:balance}
p{color:var(--color-muted);text-wrap:pretty}
button{color:inherit}
[hidden]{display:none!important}
.shopify-section{width:100%}
.page-width{width:min(calc(100% - (var(--page-gutter) * 2)),var(--page-width));margin-inline:auto}
.section-spacing{padding-block:clamp(3.25rem,6.2vw,6.25rem)}
.site-main{min-height:55vh;overflow:clip}
.visually-hidden{position:absolute!important;overflow:hidden;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:fixed;z-index:9999;top:1rem;left:1rem;transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:2px solid var(--color-teal);outline-offset:3px}
@media(max-width:749px){:root{--page-gutter:18px}.section-spacing{padding-block:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
