/* Gutenberg page frames and native WooCommerce commerce forms. */
.pm-store-page { padding-bottom: clamp(56px, 7vw, 100px); }
.pm-store-page .page-head { margin-bottom: 45px; }
.pm-store-page .woocommerce { min-width: 0; }
.pm-store-page .woocommerce h2 { font: 400 clamp(30px, 3vw, 44px)/1.15 var(--serif); margin-bottom: 24px; }
.pm-store-page .woocommerce h3 { font: 400 30px/1.2 var(--serif); margin: 24px 0; }
.pm-store-page .woocommerce form .form-row { padding: 0; margin: 0 0 22px; }
.pm-store-page .woocommerce input.input-text,
.pm-store-page .woocommerce textarea,
.pm-store-page .woocommerce select { min-height: 48px; width: 100%; border: 1px solid var(--line); background: var(--paper); color: var(--ink); padding: 12px; font: 16px var(--sans); border-radius: 0; }
.pm-store-page .woocommerce label { font-size: 14px; }
.pm-store-page .woocommerce textarea { min-height: 130px; }
.pm-store-page .woocommerce table.shop_table { border: 0; border-collapse: collapse; border-radius: 0; }
.pm-store-page .woocommerce table.shop_table th,
.pm-store-page .woocommerce table.shop_table td { border-bottom: 1px solid var(--line); padding: 20px 12px; }
.pm-store-page .woocommerce table.shop_table .amount { white-space: nowrap; }
.pm-store-page .woocommerce .product-thumbnail img { width: 100px; height: 120px; object-fit: contain; background: var(--wash); }
.pm-store-page .woocommerce .product-name a { font: 400 28px/1.2 var(--serif); }
.pm-store-page .woocommerce a.remove { color: var(--muted) !important; }
.pm-store-page .woocommerce a.remove:hover { background: var(--wash); }
.pm-store-page .woocommerce .quantity input { width: 75px; }
.pm-store-page .woocommerce button.button,
.pm-store-page .woocommerce a.button { font: 400 14px/1.4 var(--sans); padding: 15px 24px; min-height: 48px; }
.pm-store-page .woocommerce table.cart td.actions .coupon { display: flex; gap: 12px; }
.pm-store-page .woocommerce table.cart td.actions .coupon input { width: 180px; margin: 0; }
.pm-store-page .woocommerce .cart-collaterals { padding-top: 45px; }
.pm-store-page .woocommerce .cart_totals { background: var(--wash); padding: clamp(22px, 3vw, 40px); }
.pm-store-page .woocommerce .woocommerce-checkout #customer_details { margin-bottom: 45px; }
.pm-store-page .woocommerce #order_review { background: var(--wash); padding: clamp(20px, 3vw, 40px); }
.pm-store-page .woocommerce #payment { background: transparent; border-radius: 0; }
.pm-store-page .woocommerce #payment div.payment_box { background: var(--paper); color: var(--ink); }
.pm-store-page .woocommerce #payment div.payment_box::before { border-bottom-color: var(--paper); }
.pm-store-page .woocommerce .woocommerce-info,
.pm-store-page .woocommerce .woocommerce-message { background: var(--wash); color: var(--ink); border-top-color: var(--muted); }
.pm-store-page .woocommerce .woocommerce-info::before,
.pm-store-page .woocommerce .woocommerce-message::before { color: var(--icon); }
.pm-store-page .wc-block-components-notice-banner { background: var(--wash) !important; color: var(--ink) !important; border: 1px solid var(--line) !important; border-radius: 0; }
.pm-store-page .wc-block-components-notice-banner > svg { background: var(--muted) !important; fill: var(--paper); }
.pm-store-page .woocommerce .return-to-shop { margin-block: 25px 45px; }
.pm-store-page .woocommerce .woocommerce-privacy-policy-text { font-size: 13px; line-height: 1.8; margin-bottom: 22px; }
.pm-store-page .select2-container .select2-selection--single { height: 48px; border: 1px solid var(--line); border-radius: 0; background: var(--paper); }
.pm-store-page .select2-container .select2-selection__rendered { padding: 10px 30px 10px 12px; color: var(--ink); line-height: 26px; }
.pm-store-page .select2-container .select2-selection__arrow { height: 46px; }
.woocommerce-checkout .select2-dropdown,
.woocommerce-checkout .select2-search__field { background: var(--paper); color: var(--ink); border-color: var(--line); }
.pm-coming-soon { padding-block: clamp(55px, 8vw, 110px); min-height: 55vh; }
.pm-coming-soon h1 { font-size: clamp(52px, 7vw, 100px); letter-spacing: -.04em; max-width: 850px; margin-block: 22px; }
.pm-coming-soon > p:not(.eyebrow) { color: var(--muted); max-width: 560px; }
/* Core's last-child margin reset used to collapse the Media Kit's closing space. */
.gallery-main .wp-block-post-content .media-inquiry:last-child { margin-bottom: clamp(55px, 7vw, 95px); }
.gallery-main .wp-block-quote { border: 0; padding: 0; }
@media (max-width: 760px) {
 .pm-store-page .woocommerce .col2-set .col-1,
 .pm-store-page .woocommerce .col2-set .col-2 { width: 100%; float: none; }
 .pm-store-page .woocommerce table.cart td.actions .coupon { float: none; flex-wrap: wrap; margin-bottom: 15px; }
 .pm-store-page .woocommerce table.cart td.actions .coupon input,
 .pm-store-page .woocommerce table.cart td.actions .coupon button { float: none; width: 100%; }
 .pm-store-page .woocommerce .cart-collaterals .cart_totals { width: 100%; float: none; }
 .pm-store-page .woocommerce table.shop_table_responsive.cart td.product-thumbnail { display: block; text-align: left !important; }
 .pm-store-page .woocommerce table.shop_table_responsive.cart td.product-thumbnail::before { display: none; }
 .pm-store-page .woocommerce .product-thumbnail img { width: 100%; height: 200px; }
 .pm-store-page .woocommerce table.shop_table th,
 .pm-store-page .woocommerce table.shop_table td { overflow-wrap: anywhere; padding: 16px 10px; }
}
