*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-weight:var(--font-body-weight);background:var(--color-background);color:var(--color-text);line-height:1.55}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-heading-weight);line-height:1.08;letter-spacing:-.025em}
img,svg{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
a{color:inherit;text-decoration:none}
.page-width{width:min(calc(100% - 2rem),var(--page-width));margin-inline:auto}
@media(min-width:768px){.page-width{width:min(calc(100% - 4rem),var(--page-width))}}
.section-spacing{padding-block:clamp(3rem,7vw,7rem)}
.skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;transform:translateY(-200%);background:var(--color-text);color:var(--color-background);padding:.75rem 1rem;border-radius:.5rem}
.skip-link:focus{transform:translateY(0)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.focus-ring:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent),white 25%);outline-offset:3px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;padding:.75rem 1.4rem;border:1px solid transparent;border-radius:var(--button-radius);font-weight:700;line-height:1;transition:transform .2s ease,background .2s ease,color .2s ease,border .2s ease}
.button:hover{transform:translateY(-1px)}
.button--primary{background:var(--color-accent);color:#fff}
.button--primary:hover{background:var(--color-accent-hover)}
.button--secondary{background:transparent;border-color:var(--color-border);color:var(--color-text)}
.button--secondary:hover{border-color:var(--color-text)}
.button[disabled],.button[aria-disabled=true]{opacity:.5;cursor:not-allowed;transform:none}
.card-radius{border-radius:var(--card-radius)}
.rte>*:first-child{margin-top:0}.rte>*:last-child{margin-bottom:0}
.rte p,.rte ul,.rte ol,.rte blockquote{margin-block:1em}
.rte ul{list-style:disc;padding-left:1.5rem}.rte ol{list-style:decimal;padding-left:1.5rem}
.rte a{text-decoration:underline;text-underline-offset:3px}
.rte h2,.rte h3,.rte h4{margin-top:1.5em;margin-bottom:.55em}
.media-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--color-surface),color-mix(in srgb,var(--color-accent),white 86%));color:color-mix(in srgb,var(--color-text),transparent 45%);min-height:240px}
.product-card__image img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.product-card:hover .product-card__image img{transform:scale(1.035)}
.product-card__secondary{opacity:0;transition:opacity .35s ease}
.product-card:hover .product-card__secondary{opacity:1}
.header-nav details[open]>summary svg{transform:rotate(180deg)}
.mobile-drawer{visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease}
.mobile-drawer.is-open{visibility:visible;opacity:1}
.mobile-drawer__panel{transform:translateX(-100%);transition:transform .3s ease}
.mobile-drawer.is-open .mobile-drawer__panel{transform:translateX(0)}
.accordion-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}
details[open] .accordion-content{grid-template-rows:1fr}
.accordion-content>div{overflow:hidden}
.shopify-payment-button__button{border-radius:var(--button-radius)!important;min-height:50px!important}
.shopify-policy__container{max-width:900px!important;margin:0 auto!important;padding:4rem 1rem!important}
.shopify-policy__title h1{font-size:clamp(2rem,5vw,4rem)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
