/* B02: extend the approved identity without replacing the original design. */
.hero{align-items:stretch}
.hero-photo{min-width:0;isolation:isolate}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 32%}
.hero-side img{object-position:50% 22%}
.product-card{display:flex;flex-direction:column}
.product-card h3{line-height:1.5;overflow-wrap:anywhere}
.product-card h3 a{display:inline-flex;align-items:center;min-height:44px;padding-block:5px}
.product-card .product-meta{margin-top:auto;align-items:baseline;flex-wrap:nowrap}
.product-meta strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}
.product-meta>span{min-width:0}
.product-image img{object-position:center center}
.button,.menu-toggle,.bag-link,.filterbar button,.sizes button,.cart-row button,.currency-select,.filterbar select,.firo-attribute-filters select{min-height:44px}
.bag-link{display:inline-flex;align-items:center;gap:4px}
.menu-toggle{min-width:44px}
.sizes button,.cart-row button{min-width:44px}
.primary-nav a,.category-nav a,.filterbar nav button{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.header-tools input{min-height:44px}
.thumbnails button{min-height:88px;flex-shrink:0}
.footer-top div a{min-height:32px;padding-block:3px}
.legal a{overflow-wrap:anywhere}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px;line-height:1.5;min-height:3.6em}
.woocommerce ul.products li.product .price{font-variant-numeric:tabular-nums;min-height:24px}
.woocommerce ul.products li.product .button{min-height:44px;display:inline-flex;align-items:center}
.woocommerce a.added_to_cart{padding:12px}
.woocommerce div.product form.cart .variations select{min-height:44px;width:100%}
.woocommerce .quantity input.qty{min-height:44px;min-width:56px}
.woocommerce .woocommerce-notices-wrapper:empty{display:none}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select,.woocommerce form .form-row textarea{font-size:16px;min-height:44px}
.woocommerce-checkout .page-content,.woocommerce-cart .page-content{max-width:1200px}
.woocommerce .checkout #order_review_heading{margin-top:32px}
.woocommerce .checkout #order_review{margin-bottom:32px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px 12px}
.wc-block-cart,.wc-block-checkout{--wp--preset--color--primary:var(--ink);--wp--preset--color--contrast:var(--ink);--wp--preset--color--base:var(--paper);color:var(--ink)}
.wc-block-components-button:not(.is-link){border-radius:0;min-height:48px;background:var(--ink);color:var(--white)}
.wc-block-components-text-input input,.wc-blocks-components-select__select{border-radius:0!important;font-size:16px!important}
.wc-block-components-product-name{color:var(--ink);line-height:1.5}
.wc-block-cart-item__image img{object-fit:contain;background:#eae7df}
.wc-block-cart-item__remove-link{min-height:44px}
.wc-block-components-quantity-selector{min-height:44px}
.wc-block-components-quantity-selector button{min-width:36px}
.firo-attribute-filters{align-items:end;padding-bottom:8px}
.firo-attribute-filters>a{min-height:44px;display:inline-flex;align-items:center;padding-bottom:0}
@media(max-width:720px){
 .site-header{gap:10px}.header-tools{gap:10px}.header-tools input{width:70px}
 .hero h1{font-size:clamp(42px,12vw,52px)}
 .hero-photo{height:clamp(420px,120vw,560px)}
 .hero-photo img{object-fit:cover;object-position:50% 24%}
 .photo-caption{max-width:88%;font-size:8px}
 .product-grid{align-items:stretch;gap:28px 16px}
 .product-card h3{font-size:14px;line-height:1.5;min-height:4.5em;margin-bottom:8px}
 .product-card .category{font-size:10px;margin-top:12px}
 .product-card .product-meta{font-size:12px;display:grid;grid-template-columns:1fr;gap:5px}
 .product-card .product-meta>span{min-height:1.6em}
 .product-card .product-meta strong{font-size:14px;justify-self:start}
 .filterbar label{font-size:13px}.filterbar select{max-width:100%}
 .detail-copy .description{font-size:15px;line-height:1.8}
 .detail-copy summary{min-height:44px;display:list-item;padding-block:10px}
 .detail-copy details{padding-block:8px}
 .detail-copy .product-meta{align-items:center}
 .detail-copy .product-meta strong{font-size:19px}
 .detail-main-image{height:clamp(380px,110vw,520px);object-position:center}
 .cart-total{font-size:24px;text-align:left}
 .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px;min-height:4.5em}
 .woocommerce ul.products li.product .price{font-size:14px}
 .woocommerce table.shop_table_responsive tr td{overflow-wrap:anywhere}
 .woocommerce table.shop_table_responsive tr td::before{padding-right:12px}
 .woocommerce .woocommerce-ordering select{width:100%}
 .footer-top div a{min-height:44px;display:flex;align-items:center}
}
@media(max-width:359px){.header-tools input{width:54px}.site-header{padding-inline:4%}.wordmark{min-width:85px}.header-tools{gap:5px}.menu-toggle{padding:0}.hero-copy{padding-inline:5%}.filterbar{gap:10px}.product-grid{gap:24px 12px}}
