/* Heiopei shop: classic WooCommerce plus public block styling hooks. */
.shop-content{padding:52px 0 80px;min-height:55vh}.shop-teaser{padding:65px 0 80px;border-top:1px solid var(--ink)}
.heiopei-shop .woocommerce-products-header{display:block;min-height:0;border:0;margin:25px 0}
.heiopei-shop h1.page-title,.heiopei-shop .product_title{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.03em;line-height:.95;font-size:clamp(48px,7vw,100px);margin:20px 0 26px}
.heiopei-shop .product_title{font-size:clamp(38px,4.5vw,65px);overflow-wrap:anywhere}
.heiopei-shop-intro{font-size:18px;line-height:1.6;max-width:680px;margin:15px 0 35px}
.woocommerce .woocommerce-breadcrumb{font-size:12px;line-height:1.6;color:#53544c}.woocommerce .woocommerce-breadcrumb a{color:var(--ink)}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:30px 0;clear:both}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none;width:auto;margin:0;padding:16px;border:1px solid var(--ink);background:var(--paper);display:flex;flex-direction:column;min-width:0}
/* Override WooCommerce's columns-N percentage widths inside our CSS grid. */
.woocommerce ul.products[class*="columns-"] > li.product,.woocommerce-page ul.products[class*="columns-"] > li.product{width:100%;max-width:none;float:none;clear:none;margin:0;justify-self:stretch;box-sizing:border-box}
.shop-teaser .section-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end}
.shop-teaser .section-heading>div{min-width:0}
.shop-teaser .section-heading h2{font-size:clamp(42px,4.8vw,68px);line-height:1;letter-spacing:-.025em;max-width:16ch;text-wrap:balance;overflow-wrap:normal}
.shop-teaser .section-heading>.button{white-space:nowrap;align-self:end}
.woocommerce ul.products li.product>a.woocommerce-loop-product__link{display:block;width:100%;min-width:0;margin-bottom:20px}
.woocommerce ul.products li.product .button{width:100%;white-space:normal;overflow-wrap:normal;word-break:normal;box-sizing:border-box}
.woocommerce ul.products li.product a{text-decoration:none}.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#e5e0d3;margin:0 0 20px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:24px;line-height:1.12;letter-spacing:-.7px;margin:0 0 12px;padding:0;color:var(--ink);overflow-wrap:anywhere}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-weight:700;font-size:20px;line-height:1.5}
.woocommerce ul.products li.product .price del{opacity:.65;font-size:15px}.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce span.onsale{min-height:0;min-width:0;padding:8px 13px;line-height:1.3;background:var(--orange);color:var(--ink);border:1px solid var(--ink);border-radius:0;font-weight:800}
.woocommerce ul.products li.product .onsale{margin:8px;z-index:1}.woocommerce ul.products li.product .button{margin-top:auto;align-self:stretch;justify-content:center;text-align:center}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce #respond input#submit.alt,.wc-block-components-button:not(.is-link){background:var(--orange);color:var(--ink);border:1px solid var(--ink);border-radius:0;box-shadow:none;padding:16px 22px;font-weight:700;line-height:1.3;text-decoration:none;min-height:48px}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.wc-block-components-button:not(.is-link):hover{background:var(--ink);color:var(--paper)}
.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled],.woocommerce .button.disabled,.wc-block-components-button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.woocommerce a:focus-visible,.woocommerce button:focus-visible,.woocommerce input:focus-visible,.woocommerce select:focus-visible,.woocommerce textarea:focus-visible,.wc-block-components-button:focus-visible{outline:3px solid #385bdd;outline-offset:4px}
.woocommerce .quantity .qty{min-height:50px;width:5em;border:1px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:0;font:inherit}
.woocommerce input.input-text,.woocommerce textarea,.woocommerce select,.woocommerce-page input.input-text,.woocommerce-page textarea,.woocommerce-page select{border:1px solid #77786b;border-radius:0;background:var(--paper);color:var(--ink);padding:12px;font:inherit;max-width:100%}
.woocommerce div.product .woocommerce-product-details__short-description{line-height:1.7;margin:20px 0}.woocommerce div.product .woocommerce-product-details__short-description p{margin-bottom:15px}
.woocommerce div.product form.cart{margin:25px 0}.woocommerce div.product .product_meta{font-size:12px;line-height:1.8;border-top:1px solid var(--line);padding-top:20px}.woocommerce div.product .product_meta>span{display:block}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;border-bottom:1px solid var(--ink)}.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:1px solid var(--ink);border-radius:0;margin:0 4px 0 0;padding:0 18px}.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--orange)}
.woocommerce div.product .woocommerce-tabs .panel{line-height:1.7}.woocommerce div.product .woocommerce-tabs h2,.woocommerce .related>h2,.woocommerce .upsells>h2{font-size:30px;margin:25px 0}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{background:#e9e5da;color:var(--ink);border-top-color:var(--ink);line-height:1.6}.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before{color:var(--ink)}.woocommerce .woocommerce-error{border-top-color:#b72f24}
.woocommerce table.shop_table{border:1px solid var(--ink);border-radius:0;border-collapse:collapse}.woocommerce table.shop_table th{background:#e8e3d6}.woocommerce table.shop_table td,.woocommerce table.shop_table th{padding:15px}.woocommerce table.shop_table img{max-width:80px}
.woocommerce #payment{background:#e8e3d6;border-radius:0}.woocommerce #payment div.payment_box{background:var(--paper);color:var(--ink)}
.woocommerce nav.woocommerce-pagination{display:block}.woocommerce nav.woocommerce-pagination ul{border-color:var(--ink)}.woocommerce nav.woocommerce-pagination ul li{border-color:var(--ink)}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{padding:14px}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--orange);color:var(--ink)}
.woocommerce-account .woocommerce-MyAccount-navigation{display:block}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line);padding:14px 0}
.wc-block-cart__submit-container{background-color:var(--paper)}.wc-block-components-order-summary-item__quantity{background-color:var(--paper);border-color:var(--ink);box-shadow:0 0 0 2px var(--paper);color:var(--ink)}
nav .shop-cart-link{background:var(--orange);padding:13px 16px;border:1px solid var(--ink);color:var(--ink);white-space:nowrap}
@media(max-width:1050px){header nav{gap:17px}header nav .nav-cta{display:none}}
@media(max-width:760px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.shop-content{padding-top:30px}.shop-teaser{padding:45px 0}.shop-teaser .section-heading{grid-template-columns:minmax(0,1fr);justify-items:start;gap:20px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:21px}}
@media(max-width:600px){header{flex-wrap:wrap;padding:18px 0;gap:12px}header nav{flex-wrap:wrap;gap:15px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto;margin:0}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{float:none;display:block;margin-bottom:16px}.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:100%}.woocommerce ul.products li.product .button{padding:12px;font-size:12px}.woocommerce ul.products li.product{padding:12px}.shop-teaser .section-heading .button{margin-top:20px}}
@media(max-width:390px){.woocommerce ul.products{grid-template-columns:1fr}}
