*,*:after,*:before{box-sizing:inherit}html{box-sizing:border-box;font-size:62.5%}body{margin:0;background-color:var(--color-background);color:var(--color-body);font-family:var(--font-stack);font-size:2em;line-height:1.4;overflow-x:hidden}p,h1,h2,h3,h4{margin:1rem 0}article p{line-height:2}h1{font-size:5rem}h2{font-size:3rem;margin-top:2rem}a{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-bold);position:relative}a::before{content:"";position:absolute;display:block;width:100%;height:.2rem;bottom:0;left:0;background-color:var(--color-primary);transform:scaleX(0);transition:transform .3s ease}a:hover::before,a:active::before{transform:scaleX(1)}a.none::before,a.button::before{height:0;transform:none}button,.button{display:inline-block;font-family:var(--font-stack);font-weight:var(--font-weight-bold);background-color:var(--color-primary);color:var(--color-background);border:.2rem solid var(--color-primary);border-radius:var(--border-radius);cursor:pointer;text-decoration:none;text-align:center;padding:.2em .8em;min-width:7em;min-height:1.2em;outline:0}dl,ol,ul{margin-top:0;padding-left:4rem}.wrapper{min-height:100vh;display:flex;flex-direction:column}.content{max-width:var(--content-width);margin:0 auto;padding:1.6rem 1.6rem 3rem;width:100%}header{background:var(--color-panel);min-height:32rem;display:flex;align-items:center}header .content{text-align:center}svg.logo{width:80%}@media(min-width:50em){svg.logo{width:50%}}footer{margin-top:auto;background:var(--color-panel);padding-top:4rem;font-size:80%}footer .legal{text-align:center}@media(min-width:40em){footer .legal{text-align:right}}.hidden{display:none}.flex{display:flex}.flex-gap{gap:2rem;flex-wrap:wrap;margin-bottom:2rem}.responsive-flex{display:flex;flex-direction:column;align-items:center;justify-content:center}.responsive-flex>*{flex:auto}@media(min-width:40em){.responsive-flex{flex-direction:row}}.links-flex{font-size:150%;padding:3rem 0;display:flex;flex-wrap:wrap}.links-flex>*{margin-right:2rem}.grid{max-width:var(--content-width);margin:0 auto;padding:3rem 0;display:grid;grid-gap:3rem}.grid-column-span-2{grid-column-end:span 1}.grid-column-span-3{grid-column-end:span 1}@media(min-width:40em){.grid{grid-template-columns:[content-start left-start] 1fr [left-end right-start] 1fr [right-end content-end]}.grid-column-span-2{grid-column-end:span 2}.grid-column-span-3{grid-column-end:span 2}}@media(min-width:60em){.grid-3{grid-template-columns:[content-start left-start] 1fr [left-end center-start] 1fr [center-end right-start] 1fr [right-end content-end]}.grid-column-span-3{grid-column-end:span 3}}.tile{display:flex;flex-direction:column;color:var(--color-body);background:var(--color-panel);font-weight:400;--width:.6rem;--half:.3rem;transition:box-shadow 150ms ease-out}.tile:focus,.tile:hover,.tile:active{outline:0;box-shadow:0 0 0 var(--half)var(--color-background),0 0 0 var(--width)var(--color-primary);box-shadow:0 0 0 var(--half)var(--color-background),0 0 0 var(--width)var(--color-primary)}a.tile::before{height:0;background-color:initial}.tile>div.bg-primary{min-height:20rem;background-position:50%;background-size:cover;position:relative}.tile>div.info{padding:.6rem 1.6rem}.tile>h2{margin-bottom:1rem}.bg-primary{background:var(--color-primary)}.tile-price{position:absolute;top:1rem;right:1rem;background:var(--color-background);color:var(--color-body);padding:.5rem 1rem;border-radius:var(--border-radius);font-weight:var(--font-weight-bold);font-size:1.8rem}.product-header{display:flex;flex-direction:column;gap:3rem}@media(min-width:60em){.product-header{flex-direction:row}}.product-main-img{flex:1}.product-main-img img{width:100%;height:auto;border-radius:1rem}.product-info{flex:1}.product-info h1{margin-top:0}.product-info .price{font-size:3rem;font-weight:var(--font-weight-bold);color:var(--color-primary);margin:1rem 0}.product-info .stock{font-size:1.6rem;margin:1rem 0}.product-info .stock.in-stock{color:#2d8659}.product-info .stock.out-of-stock{color:#c53030}.product-info .sku{font-size:1.4rem;color:#666;margin:.5rem 0}.product-info .excerpt{font-size:1.8rem;line-height:1.6;margin:2rem 0}.product-info .add-to-cart{font-size:2rem;padding:1rem 3rem;margin-top:2rem}.product-content{margin-top:4rem}.product-content article{max-width:80rem}.product-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(30rem,1fr));gap:2rem;margin:4rem auto;max-width:var(--content-width);padding:0 1.6rem}.product-images img{width:100%;height:auto;border-radius:1rem}.keywords{font-size:1.6rem;margin:3rem 0;padding:2rem;background:var(--color-panel);border-radius:1rem}