/* =============================================================================
   product card (shop archive, products block, related)
   ========================================================================== */
.pp-grid{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.125rem; padding: 0; margin: 0; list-style: none}
ul.pp-grid > li{display: flex}
.pp-card{flex: 1; display: flex; flex-direction: column; border: 1.5px solid var(--ama-line-color); border-radius: var(--ama-radius); overflow: hidden; background-color: #fff; text-decoration: none!important; color: inherit; transition: border-color .2s, box-shadow .2s}
   .pp-card:hover{border-color: var(--ama-primary-color); box-shadow: 0 .875rem 1.875rem rgba(20, 30, 22, .08)}
   .pp-img{position: relative; display: block; aspect-ratio: 4/3; overflow: hidden; background-color: var(--ama-mint-color)}
      .pp-img img{display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s}
      .pp-card:hover .pp-img img{transform: scale(1.04)}
   .pp-badge{position: absolute; left: .875rem; top: .875rem; z-index: 2; padding: .375rem .625rem; border-radius: var(--ama-radius-sm); background-color: var(--ama-primary-color); color: #fff; font-size: .65625rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; line-height: 1.2}
   .pp-b{flex: 1; display: flex; flex-direction: column; gap: .1875rem; padding: 1.125rem 1.25rem}
      .pp-sp{font-size: .71875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ama-secondary-color)}
      .pp-name{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.5rem; line-height: 1.2}
      .pp-card.has-price .pp-name{font-size: 1.25rem}
      .pp-meta{font-size: .84375rem; color: var(--ama-muted-color)}
      .pp-price{display: flex; align-items: baseline; flex-wrap: wrap; gap: .25rem .625rem; margin-top: .5rem; font-family: var(--ama-font-serif); font-weight: 600; font-size: 1.5rem; color: var(--ama-primary-color)}
         .pp-price s, .pp-price del,
         .pd-price s, .pd-price del{color: var(--ama-ink-color); text-decoration-thickness: .08em}
         .pp-price ins,
         .pd-price ins{text-decoration: none; color: var(--ama-find-color)}
      .pp-foot{display: flex; justify-content: space-between; align-items: center; gap: .625rem; margin-top: auto; padding-top: .875rem; border-top: 1px solid var(--ama-line-color)}
      .pp-b > .pp-foot{margin-top: .875rem}
      .pp-b > .pp-meta + .pp-foot,
      .pp-b > .pp-name + .pp-foot{margin-top: auto}
   .pp-st{display: inline-flex; align-items: center; gap: .5rem; font-size: .8125rem; font-weight: 600; color: var(--ama-primary-color)}
      .pp-st i{width: .5rem; height: .5rem; border-radius: 50%; background-color: var(--ama-success-color); box-shadow: 0 0 0 4px rgba(62, 154, 85, .15)}
      .pp-st.is-out{color: var(--ama-muted-color)}
      .pp-st.is-out i{background-color: #B9B9B9; box-shadow: 0 0 0 4px rgba(0, 0, 0, .06)}
   .pp-go{width: 2.375rem; height: 2.375rem; flex: none; border: 1.5px solid var(--ama-primary-color); border-radius: var(--ama-radius-sm); display: grid; place-items: center; color: var(--ama-primary-color); transition: background-color .2s, color .2s}
   .pp-card:hover .pp-go{background-color: var(--ama-primary-color); color: #fff}
   .pp-card:hover .pp-go .arr{transform: none}

.woocommerce-price-suffix{font-size: .75em; font-weight: 500}

/* =============================================================================
   archive
   ========================================================================== */
.block-shop .woocommerce-notices-wrapper:not(:empty){margin-bottom: 1.5rem}
.woocommerce-products-header:empty{display: none}
.pp-tools{display: flex; gap: .75rem}
.pp-sel{display: flex; align-items: center; gap: .625rem; font-size: .8125rem; font-weight: 600; color: var(--ama-muted-color)}
   .pp-sel .woocommerce-ordering{margin: 0}
   .pp-sel select{width: auto; height: 2.75rem; padding: 0 2.25rem 0 .875rem; font-weight: 600; color: var(--ama-ink-color)}
.pp-series{display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 1.125rem; margin-bottom: 1.5rem; padding: 1.25rem 1.625rem; border-radius: var(--ama-radius); background-color: var(--ama-mint-color)}
   .pp-series b{font-family: var(--ama-font-serif); font-weight: 600; font-size: 1.375rem; color: var(--ama-primary-color); white-space: nowrap}
   .pp-series p{font-size: .90625rem; line-height: 1.55; color: var(--ama-muted-color)}
.woocommerce-info,
.woocommerce-message,
.woocommerce-error,
.woocommerce-no-products-found .woocommerce-info{list-style: none; margin: 0; padding: var(--ama-alert-padding-y) var(--ama-alert-padding-x); border: var(--ama-alert-border); border-radius: var(--ama-alert-border-radius); background-color: var(--ama-alert-bg); color: var(--ama-alert-color); font-size: .9375rem}
   .woocommerce-message{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .75rem; border-color: var(--ama-primary-color)}
   .woocommerce-error{border-color: #E4B4AE; background-color: #FBF1EF}
   /* theme coloured info / success notices (bootstrap defaults are blue / bright green) */
   .woocommerce-info:not(:empty),
   .woocommerce-message,
   .woocommerce-notice.woocommerce-notice--success,
   ul.woocommerce-thankyou-order-details + p{--ama-alert-color: var(--ama-ink-color); --ama-alert-bg: var(--ama-mint-color); --ama-alert-border-color: var(--ama-accent-color)}
   .woocommerce-info a:not(.button){color: var(--ama-primary-color); font-weight: 600}
   .woocommerce-message .button,
   .woocommerce-info .button{order: 2; --ama-btn-padding-y: calc(.5rem - var(--ama-btn-border-width)); --ama-btn-padding-x: calc(1rem - var(--ama-btn-border-width)); --ama-btn-font-size: .8125rem}
.ama-load-more.is-loading{opacity: .6; pointer-events: none}

/* =============================================================================
   single product
   ========================================================================== */
.pd-top{padding-bottom: 5.625rem}
   .pd-top > .ama-crumbs{margin-bottom: 1.5rem}
.pd-grid{display: grid; grid-template-columns: 1.15fr 1fr; gap: 3.5rem; align-items: start}
   .pd-grid > .summary{min-width: 0}

/* gallery */
.pd-gal{min-width: 0}
.pd-main{position: relative}
   .pd-main .splide__slide a,
   .pd-single a{display: block; border-radius: var(--ama-radius); overflow: hidden; background-color: var(--ama-mint-color); cursor: zoom-in}
   .pd-main img{display: block; width: 100%; aspect-ratio: 4/3.2; object-fit: cover}
   .pd-single{padding: 0; margin: 0; list-style: none}
   .pd-main .pp-badge{left: 1.375rem; top: 1.375rem}
   .pd-gal .pd-main .splide__arrows{position: absolute; right: 1.25rem; bottom: 1.25rem; z-index: 2}
   .pd-main .splide__arrow--prev{background-color: #fff}
   /* before Splide starts (WP Rocket "Delay JavaScript execution" waits for the first touch / scroll):
      first image and the thumbnail row are already shown in their final place */
   .pd-gal .splide:not(.is-initialized){visibility: visible}
   .pd-gal .primary__splide:not(.is-initialized) .splide__slide{flex: 0 0 100%}
   .pd-gal .primary__splide:not(.is-initialized) .splide__slide + .splide__slide,
   .pd-gal .splide:not(.is-initialized) .splide__arrows{visibility: hidden}
   .pd-gal .secondary__splide:not(.is-initialized) .splide__list{gap: .625rem}
   .pd-gal .secondary__splide:not(.is-initialized) .splide__slide{flex: 0 0 calc((100% - 2.5rem) / 5)}
.pd-th{margin-top: .625rem}
   .pd-th .splide__slide{border: 2px solid transparent; border-radius: 1.125rem .1875rem 1.125rem .1875rem; overflow: hidden; background-color: var(--ama-mint-color); cursor: pointer; transition: border-color .2s}
   .pd-th .splide__slide.is-active,
   .pd-th .splide__slide:hover{border-color: var(--ama-primary-color)}
   .pd-th img{display: block; width: 100%; aspect-ratio: 1; object-fit: cover}

/* summary */
.pd-grid .summary > .kicker + h1{margin-top: .875rem}
.pd-grid .summary h1{font-size: clamp(2.5rem, 1.9rem + 2.2vw, 3.5rem); line-height: 1; margin-bottom: .375rem}
   .pd-grid .summary h1.is-long{font-size: clamp(2rem, 1.55rem + 1.35vw, 2.75rem); line-height: 1.08} /* longer names (valmistooted): 44px → 32px */
.pd-sub{font-family: var(--ama-font-serif); font-style: italic; font-size: 1.25rem; color: var(--ama-secondary-color)}
.pd-price{display: flex; align-items: baseline; flex-wrap: wrap; gap: .375rem .875rem; margin: 1rem 0 .25rem; font-family: var(--ama-font-serif); font-weight: 600; font-size: 2.5rem; line-height: 1.1; color: var(--ama-primary-color)}
   .pd-price small{font-family: var(--ama-font-sans-serif); font-size: .8125rem; font-weight: 500; color: var(--ama-muted-color)}
.pp-st.is-big{margin: 1.125rem 0 .375rem; font-size: .875rem}
.pd-spec{margin: 1.125rem 0 1.5rem; border-top: 1px solid var(--ama-line-color)}
   .pd-spec div{display: grid; grid-template-columns: 8.75rem 1fr; gap: 1rem; padding: .6875rem 0; border-bottom: 1px solid var(--ama-line-color); font-size: .9375rem}
   .pd-spec dt{color: var(--ama-muted-color); font-weight: 400}
   .pd-spec dd{margin: 0; font-weight: 600}
.pd-choose{display: flex; flex-direction: column; gap: .5rem; margin-bottom: 1.375rem}
   .pd-choose > b{font-size: .8125rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--ama-secondary-color); margin-bottom: .25rem}
   .pd-opt{display: flex; align-items: center; gap: .875rem; margin: 0; padding: .875rem 1rem; border: 1.5px solid var(--ama-line-color); border-radius: var(--ama-radius-sm); cursor: pointer; transition: border-color .2s, background-color .2s}
   .pd-opt:hover{border-color: var(--ama-primary-color)}
   .pd-opt input{margin: 0; flex: none}
   .pd-opt.is-checked{border-color: var(--ama-primary-color); background-color: var(--ama-mint-color)}
   .pd-opt strong{display: block; font-size: .9375rem}
   .pd-opt small{font-size: .8125rem; color: var(--ama-muted-color)}
.pd-actions .wp-block-button__link .ico{width: 1.125rem; height: 1.125rem}
.pd-note{margin-top: 1.125rem; font-size: .84375rem; line-height: 1.6; color: var(--ama-muted-color)}

/* add to cart */
.summary form.cart{display: flex; flex-wrap: wrap; align-items: stretch; gap: .875rem; margin: 0}
   .summary form.cart .quantity{display: flex}
   .summary form.cart .quantity:has(input[type="hidden"]){display: none}
   .summary form.cart .quantity .qty{width: 5rem; height: 100%; text-align: center}
   .summary form.cart .single_add_to_cart_button::after{content: ''; display: block; flex: none; width: 1.3125rem; height: .6875rem; background-color: currentColor; -webkit-mask: url(../images/arrow-long.svg) center/contain no-repeat; mask: url(../images/arrow-long.svg) center/contain no-repeat}
   .summary .variations{margin-bottom: 1rem; border-collapse: collapse}
      .summary .variations th, .summary .variations td{padding: .375rem 1rem .375rem 0; text-align: left}
      .summary .variations select{min-width: 12rem}
   .summary .single_variation_wrap{width: 100%}
   .summary .woocommerce-variation-add-to-cart{display: flex; flex-wrap: wrap; gap: .875rem}
.summary .stock{display: none}

/* story + related */
.pd-story{--ama-wave-height: 6.875rem; position: relative; overflow: hidden; background-color: var(--ama-mint-color); padding: 10rem 0 9.375rem}
   .pd-story__inner{position: relative; z-index: 3; display: grid; grid-template-columns: 1fr 1.2fr; gap: 4rem}
   .pd-story__head h2{margin-top: 1rem!important}
   .pd-story__text{font-size: 1.03125rem; line-height: 1.7; color: var(--ama-muted-color)}
      .pd-story__text > * + *{margin-top: .875rem!important}
.pd-story + .pd-rel{margin-top: var(--ama-margin-top-block)}
.pd-process{grid-column: content; margin-top: var(--ama-margin-top-block)}
.pd-process + .pd-rel{margin-top: var(--ama-margin-top-block)}
.pd-top + .pd-rel{margin-top: 0}
.pd-rel .block__header{margin-bottom: 2.25rem}
.single-product .gutenberg-elements > .product:last-child{padding-bottom: var(--ama-offset-bottom-last)}

/* =============================================================================
   mini cart (offcanvas)
   ========================================================================== */
.widget_shopping_cart.offcanvas{--ama-offcanvas-padding-x: 1.5rem; color: var(--ama-ink-color)}
   .widget_shopping_cart .offcanvas-header{padding: 1.25rem var(--ama-offcanvas-padding-x); border-bottom: 1px solid var(--ama-line-color)}
   .widget_shopping_cart .offcanvas-title{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.5rem}
   .widget_shopping_cart .offcanvas-body{padding: var(--ama-offcanvas-padding-x)}
.offcanvas-body > .widget_shopping_cart_content{
   position: relative;
   height: 100%;
   display: grid;
   grid-template-rows: 1fr auto auto;
}
   .offcanvas-body > .widget_shopping_cart_content > * + *{
      margin-top: var(--ama-offcanvas-padding-x);
      padding-top: var(--ama-offcanvas-padding-x);
      border-top: 1px solid var(--ama-line-color)
   }
   .offcanvas-body .woocommerce-mini-cart{
      overflow-x: hidden;
      overflow-y: auto;
      padding: 0;
      margin: 0;
      list-style: none
   }
      .offcanvas-body .woocommerce-mini-cart > .mini_cart_item{
         position: relative;
         min-height: 4rem;
         padding-right: 2rem;
         font-size: var(--ama-sm-font-size);
         line-height: var(--ama-sm-line-height)
      }
         .offcanvas-body .woocommerce-mini-cart > .mini_cart_item > .remove{
            position: absolute;
            top: 0;
            right: 0;
            overflow: hidden;
            text-indent: -5000px;
            width: 1.5rem;
            height: 1.5rem;
            border: 1.5px solid currentColor;
            background-color: #fff;
            border-radius: var(--ama-radius-sm)
         }
         .woocommerce-mini-cart-item__inner{display: grid; grid-template-columns: 4rem 1fr; gap: .875rem; align-items: start}
            .woocommerce-mini-cart-item__thumb img{display: block; width: 4rem; height: 4rem; object-fit: cover; border-radius: .875rem .1875rem .875rem .1875rem}
            .woocommerce-mini-cart-item__about{font-size: .875rem; font-weight: 600}
            .woocommerce-mini-cart-item__about .quantity{display: block; margin-top: .25rem; font-weight: 500; color: var(--ama-muted-color)}

      .offcanvas-body .woocommerce-mini-cart > .mini_cart_item + .mini_cart_item{margin-top: 1.875rem}
         .offcanvas-body .woocommerce-mini-cart > .mini_cart_item + .mini_cart_item::before{
            content: '';
            display: block;
            width: 100%;
            height: 1px;
            background-color: var(--ama-line-color);
            position: absolute;
            top: -.9375rem;
            left: 0
         }

      .offcanvas-body .woocommerce-mini-cart__total{
         font-size: var(--ama-md-font-size);
         line-height: var(--ama-md-line-height);
         display: grid;
         grid-template-columns: 1fr auto;
         gap: .5rem;
         align-items: center;
         margin: 0
      }
      .offcanvas-body .woocommerce-mini-cart__buttons{
         display: grid;
         grid-template-columns: 1fr 1fr;
         gap: .625rem;
         margin: 0
      }
      .offcanvas-body .woocommerce-mini-cart__buttons .button:not(.checkout){--ama-btn-bg: var(--ama-light-color); --ama-btn-border-color: var(--ama-light-color); --ama-btn-color: var(--ama-primary-color)}
      .woocommerce-mini-cart__empty-message{color: var(--ama-muted-color)}

/* =============================================================================
   account
   ========================================================================== */
body.woocommerce-account .gutenberg-elements > .woocommerce,
body.woocommerce-account .gutenberg-elements > .woocommerce > .u-columns,
.woocommerce-MyAccount-content .woocommerce-Address-title,
.woocommerce-address-fields__field-wrapper{display: grid; gap: var(--ama-gutter-double-x)}

body.woocommerce-account .gutenberg-elements > .woocommerce{grid-template-columns: 25% 1fr}
body.woocommerce-account .gutenberg-elements > .woocommerce > .u-columns{grid-template-columns: repeat(2, 1fr)}

body.woocommerce-account .gutenberg-elements > .woocommerce > .woocommerce-notices-wrapper,
body.woocommerce-account .gutenberg-elements > .woocommerce > .u-columns{grid-column: auto/span 2}
body.woocommerce-account .gutenberg-elements > .woocommerce > .u-columns > * + *{margin: 0}
body.woocommerce-account .gutenberg-elements > .woocommerce > .u-columns > * > * + *{margin-top: var(--ama-gutter-x)}

.woocommerce-MyAccount-navigation ul{list-style: none; padding: 0; margin: 0}
.woocommerce-MyAccount-navigation ul > li + li{border-top: 1px solid var(--ama-line-color)}
.woocommerce-MyAccount-navigation ul > li > a{
   display: block;
   font-size: 1rem;
   line-height: 1.25rem;
   text-decoration: none;
   padding: .9375rem 0;
   color: inherit
}
.woocommerce-MyAccount-navigation .is-active > a{color: var(--ama-primary-color); font-weight: 600}
.woocommerce-MyAccount-navigation ul > li:first-child > a{padding-top: 0}

.woocommerce-MyAccount-content .col-1,
.woocommerce-MyAccount-content .col-2{flex: unset; width: 100%}

.woocommerce-MyAccount-content > p:not([class]) + p:not([class]){margin-top: var(--ama-margin-top-base)}
.woocommerce-MyAccount-content * + .col-1,
.woocommerce-MyAccount-content .col-2{margin-top: var(--ama-gutter-x)}

.woocommerce-MyAccount-content .woocommerce-Address-title{grid-template-columns: 1fr auto; align-items: center; gap: .625rem}
.woocommerce-MyAccount-content .woocommerce-Address-title + *{margin-top: .625rem}
.woocommerce-MyAccount-content address{border: 1.5px dashed var(--ama-line-color); border-radius: var(--ama-radius-sm); padding: var(--ama-gutter-x)}

* + .woocommerce-address-fields,
.woocommerce-address-fields__field-wrapper + *{margin-top: 1.25rem}
.woocommerce-address-fields__field-wrapper > *{margin: 0!important}

.woocommerce-address-fields__field-wrapper{--fields-grid: 2; grid-template-columns: repeat(var(--fields-grid), 1fr); gap: var(--ama-gutter-x); align-items: flex-end}
   .woocommerce-address-fields__field-wrapper > *:not(.address-field):not(.form-row-first):not(.form-row-last),
   .woocommerce-address-fields__field-wrapper > #billing_country_field,
   .woocommerce-address-fields__field-wrapper > #billing_postcode_field + #billing_city_field,
   .woocommerce-address-fields__field-wrapper > #billing_city_field + #billing_postcode_field{grid-column: auto/span var(--fields-grid)}

.woocommerce-EditAccountForm > * + *,
.woocommerce-EditAccountForm > fieldset * + *{margin-top: var(--ama-gutter-x)}
.woocommerce-EditAccountForm > * + fieldset{margin-top: var(--ama-gutter-double-x)}

.woocommerce-EditAccountForm > fieldset{border: 0; padding: 0; margin-left: 0; margin-right: 0}
.woocommerce-EditAccountForm > fieldset legend{display: block; font-size: var(--ama-h-sm-font-size); line-height: var(--ama-h-sm-line-height); font-family: var(--ama-h-font-family); font-weight: var(--ama-h-font-weight)}

.woocommerce-form-login > * + *,
.woocommerce-form-register > * + *,
.woocommerce-form-login * + .button,
.woocommerce-form-register * + .button{margin-top: var(--ama-gutter-x)}

.woocommerce-form-register > .woocommerce-form-row + p:not([class]){margin-top: .5rem; font-size: 85%; line-height: 1.25}

@media (max-width: 991px){
   body.woocommerce-account .gutenberg-elements > .woocommerce,
   body.woocommerce-account .gutenberg-elements > .woocommerce > .u-columns,
   .woocommerce-MyAccount-content .woocommerce-Address-title,
   .woocommerce-address-fields__field-wrapper{grid-template-columns: 1fr}

   .woocommerce-address-fields__field-wrapper > *:not(.address-field):not(.form-row-first):not(.form-row-last),
   .woocommerce-address-fields__field-wrapper > #billing_country_field,
   .woocommerce-address-fields__field-wrapper > #billing_postcode_field + #billing_city_field,
   .woocommerce-billing-fields__field-wrapper > #billing_city_field + #billing_postcode_field,
   body.woocommerce-account .gutenberg-elements > .woocommerce > .woocommerce-notices-wrapper,
   body.woocommerce-account .gutenberg-elements > .woocommerce > .u-columns{grid-column: auto/span 1}
}

form.lost_reset_password{grid-column: 1 / -1}
form.lost_reset_password > * + *{margin-top: var(--ama-gutter-x)}

/* =============================================================================
   cart
   ========================================================================== */
.woocommerce-notices-wrapper:not(:empty) > * + *{margin-top: .25rem}

.product-remove .remove{display: block; width: 1.5rem; height: 1.5rem; color: #fff; background-color: var(--ama-primary-color); border-radius: var(--ama-radius-sm); text-indent: -5000px}

.col2-set .col-1, .col2-set .col-2{flex: unset; width: 100%}
.col2-set .col-1 + .col-2{margin-top: var(--ama-gutter-double-x)}

* + .return-to-shop{margin-top: var(--ama-gutter-double-x)}
.cart-empty.woocommerce-info{text-align: center}
.return-to-shop{text-align: center}

dl.variation{display: grid; grid-template-columns: auto 1fr; gap: .25rem .375rem; margin: 0; font-size: .8125rem; line-height: 1rem}
dl.variation > *{margin: 0}
* + dl.variation{margin-top: 5px}

.woocommerce-cart-form__contents{width: 100%; border-collapse: collapse}
.woocommerce-cart-form__contents .product-name a{font-family: var(--ama-font-serif); font-size: 1.125rem; text-decoration: none}
.woocommerce-cart-form__contents .product-name a:hover{color: var(--ama-primary-color)}

* + .cart-collaterals{margin-top: 2.5rem}
.cart-collaterals > .cart_totals > * + *:not(.shop_table){margin-top: 1.875rem}
.cart-collaterals h2,
.woocommerce-billing-fields > h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields > h3{font-size: 1.75rem; margin: 0}

.cart-collaterals > .cart_totals{
   padding: var(--ama-gutter-double-x);
   border-radius: var(--ama-radius);
   background-color: var(--ama-mint-color);
   width: 100%;
   max-width: 39.375rem;
   margin-left: auto;
   margin-right: auto
}
.cart-collaterals > .cart_totals .wc-proceed-to-checkout{text-align: center}
.cart-collaterals > .cart_totals .wc-proceed-to-checkout .button{width: 100%}

.cart-collaterals .shop_table{width: 100%; border-collapse: collapse}
.cart-collaterals .shop_table tr > *{padding-top: 1rem; padding-bottom: 1rem}
.cart-collaterals .shop_table tr:not(:first-child) th,
.cart-collaterals .shop_table tr:not(:first-child) td{border-top: 1px solid rgba(43, 78, 49, .1)}
.cart-collaterals .shop_table tr:not(.woocommerce-shipping-totals) td{text-align: right}

/* "sh KM 24%" under the total: small, no divider (cart, checkout, order tables) */
.cart-collaterals .shop_table tr.is-included > *{padding-top: 0; border-top: 0!important; white-space: nowrap}
tr.is-included > th, tr.is-included > td{font-size: .875rem; font-weight: 400; color: var(--ama-muted-color)}
.woocommerce-checkout-review-order-table > tfoot > tr.is-included{margin-top: 0; padding-top: 0; border-top: 0}

@media (min-width: 1200px){
   .woocommerce-cart .gutenberg-elements > .woocommerce{
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      gap: var(--ama-gutter-double-x);
      align-items: flex-start
   }
   .woocommerce-cart .gutenberg-elements > .woocommerce > *:not(.woocommerce-cart-form, .cart-collaterals){grid-column: 1 / -1}
   .woocommerce-cart .gutenberg-elements > .woocommerce > .woocommerce-cart-form{grid-column: 1 / 8}
   .woocommerce-cart .gutenberg-elements > .woocommerce > * + .cart-collaterals{margin-top: 0; grid-column: 8 / -1}
}

/* =============================================================================
   coupon
   ========================================================================== */
.woocommerce-cart-form__contents div.coupon{display: grid; grid-template-columns: 1fr auto; gap: .5rem var(--ama-gutter-x)}
.woocommerce-cart-form__contents div.coupon > label{display: none!important}

form.woocommerce-form-coupon,
.woocommerce-form-login-toggle + .woocommerce-form-login,
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
form.woocommerce-checkout{display: grid}

form.woocommerce-form-coupon,
.woocommerce-form-login-toggle + .woocommerce-form-login,
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
form.woocommerce-checkout{--woo-grid-layout: 1fr}

form.woocommerce-form-coupon,
.woocommerce-form-login-toggle + .woocommerce-form-login{
   margin-top: var(--ama-gutter-x);
   border: 1.5px dashed var(--ama-line-color);
   background-color: #fff;
   padding: var(--ama-gutter-x);
   border-radius: var(--ama-radius-sm);
   grid-template-columns: var(--woo-grid-layout);
   gap: 1.25rem;
   align-items: center
}
   form.woocommerce-form-coupon > *:empty,
   .woocommerce-form-login-toggle + .woocommerce-form-login > *:empty{display: none!important}

   .woocommerce-form-login-toggle + .woocommerce-form-login > *{margin-top: 0}

/* =============================================================================
   checkout
   ========================================================================== */
.woocommerce-shipping-fields + *{margin-top: var(--ama-gutter-x)}
#ship-to-different-address + .shipping_address{padding-top: var(--ama-gutter-x)}

.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
form.woocommerce-checkout{grid-template-columns: var(--woo-grid-layout); gap: var(--ama-gutter-x) var(--ama-gutter-double-x)}

.woocommerce-billing-fields > *:first-child + *{margin-top: var(--ama-gutter-x)}

.woocommerce .form-row{margin: 0}
.woocommerce .form-row > label{display: block; margin: 0 0 .375rem; font-size: .8125rem; font-weight: 600; color: var(--ama-muted-color)}
.woocommerce .form-row .required{color: #B4382A; text-decoration: none}
.woocommerce-input-wrapper{display: block}

#order_review_heading{display: none!important}

/* customer type: Eraklient / Äriklient as a two-part switch */
.ama-customer-type .woocommerce-input-wrapper{display: flex; gap: .5rem}
   .ama-customer-type input[type="radio"]{position: absolute; opacity: 0; pointer-events: none}
   .ama-customer-type label.radio{flex: 1 1 0; display: flex; align-items: center; justify-content: center; min-height: 3rem; margin: 0; padding: .5rem 1rem; border: 1.5px solid var(--ama-line-color); border-radius: var(--ama-radius-sm); background-color: #fff; font-weight: 600; color: var(--ama-ink-color); cursor: pointer; transition: border-color .2s, background-color .2s, color .2s}
   .ama-customer-type label.radio:hover{border-color: var(--ama-primary-color)}
   .ama-customer-type label.radio .required, .ama-customer-type label.radio .optional{display: none}
   .ama-customer-type input:checked + label.radio{border-color: var(--ama-primary-color); background-color: var(--ama-primary-color); color: #fff}
   .ama-customer-type input:focus-visible + label.radio{outline: 2px dashed var(--ama-primary-color); outline-offset: 3px}

/* business fields only for Äriklient */
form:has(input[name="billing_customer_type"][value="private"]:checked) .ama-business-field{display: none!important}

/* local pickup: no address (classic local_pickup and pickup_location) */
form.woocommerce-checkout:has(input.shipping_method[value^="local_pickup"]:checked, input.shipping_method[type="hidden"][value^="local_pickup"], input.shipping_method[value^="pickup_location"]:checked, input.shipping_method[type="hidden"][value^="pickup_location"]) :is(#billing_country_field, #billing_address_1_field, #billing_address_2_field, #billing_city_field, #billing_postcode_field, #billing_state_field, .woocommerce-shipping-fields){display: none!important}

* + form.woocommerce-checkout{margin-top: 2.5rem}

form.woocommerce-checkout{gap: var(--ama-gutter-double-x); align-items: flex-start}
   .woocommerce-checkout-review-order{padding: var(--ama-gutter-double-x); border-radius: var(--ama-radius); background-color: var(--ama-mint-color)}
      .woocommerce-checkout-payment,
      * + .place-order,
      * + #place_order{margin-top: var(--ama-gutter-double-x)}
      * + .place-order{padding-top: var(--ama-gutter-double-x); border-top: 1px solid rgba(43, 78, 49, .1)}
      #place_order{width: 100%}

.woocommerce-checkout-review-order-table, .woocommerce-checkout-review-order-table > thead, .woocommerce-checkout-review-order-table > tbody, .woocommerce-checkout-review-order-table > tfoot, .woocommerce-checkout-review-order-table tr, .woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td{display: block}

.woocommerce-checkout-review-order-table > * + tfoot,
.woocommerce-checkout-review-order-table > tfoot > * + *{margin-top: .5rem; padding-top: .5rem; border-top: 1px solid rgba(43, 78, 49, .1)}

.woocommerce-checkout-review-order-table > * > tr:not(.shipping){display: grid; grid-template-columns: 1fr auto; gap: .5rem 1rem}
.woocommerce-checkout-review-order-table th{text-align: left}

ul.woocommerce-shipping-methods,
ul.wc_payment_methods{padding-left: 0; margin: 0; list-style: none}
ul.woocommerce-shipping-methods > li + li,
ul.wc_payment_methods > li + li{margin-top: .75rem}
ul.wc_payment_methods .payment_box{padding-top: .5rem; font-size: .875rem; color: var(--ama-muted-color)}
ul.wc_payment_methods label{font-weight: 600; cursor: pointer}

.woocommerce-form-login + .woocommerce-form-coupon-toggle{margin-top: var(--ama-gutter-x)}

/* =============================================================================
   woocommerce-order
   ========================================================================== */
.woocommerce > .woocommerce-order > * + *{margin-top: var(--ama-margin-top-base)}
.woocommerce-order > * + .woocommerce-order-details{margin-top: 2.5rem}

* + table.woocommerce-table--order-details{margin-top: .75rem}
table.woocommerce-table--order-details, table.woocommerce-table--order-details > *, table.woocommerce-table--order-details tr, table.woocommerce-table--order-details tr > *{display: block}

table.woocommerce-table--order-details{border: 1.5px dashed var(--ama-line-color); padding: var(--ama-gutter-x); border-radius: var(--ama-radius-sm)}
table.woocommerce-table--order-details tr{display: grid; grid-template-columns: 1fr auto; gap: .5rem 1rem}

ul.woocommerce-thankyou-order-details{padding: var(--ama-gutter-x); border: 1.5px dashed var(--ama-line-color); border-radius: var(--ama-radius-sm); list-style: none}
ul.woocommerce-thankyou-order-details > li + li{padding-top: .5rem; margin-top: .5rem; border-top: 1.5px dashed var(--ama-line-color)}

/* =============================================================================
   media queries
   ========================================================================== */
@media (min-width: 568px){
   .woocommerce-billing-fields__field-wrapper,
   .woocommerce-shipping-fields__field-wrapper{--woo-grid-layout: 1fr 1fr}

   .woocommerce-billing-fields__field-wrapper > *:not(.form-row-first):not(.form-row-last):not(.address-field),
   .woocommerce-shipping-fields__field-wrapper > *:not(.form-row-first):not(.form-row-last):not(.address-field),
   .woocommerce-billing-fields__field-wrapper > #billing_country_field,
   .woocommerce-billing-fields__field-wrapper > #billing_postcode_field + #billing_city_field,
   .woocommerce-billing-fields__field-wrapper > #billing_city_field + #billing_postcode_field,
   .woocommerce-shipping-fields__field-wrapper > #shipping_country_field,
   .woocommerce-shipping-fields__field-wrapper > #shipping_postcode_field + #shipping_city_field,
   .woocommerce-shipping-fields__field-wrapper > #shipping_city_field + #shipping_postcode_field{grid-column: auto/span 2}
}

.woocommerce-cart-form__contents td.product-thumbnail > a{display: block; position: relative; width: 100%; overflow: hidden; border-radius: .875rem .1875rem .875rem .1875rem; background-color: var(--ama-mint-color)}
   .woocommerce-cart-form__contents td.product-thumbnail > a::before{content: ''; display: block; padding-top: 100%}
   .woocommerce-cart-form__contents td.product-thumbnail > a > img{display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}

@media (min-width: 768px){
   form.woocommerce-form-coupon{--woo-grid-layout: 1fr auto}
   .woocommerce-form-login-toggle + .woocommerce-form-login{--woo-grid-layout: repeat(2, 1fr)}

   form.woocommerce-form-coupon > p:not([class]),
   .woocommerce-form-login-toggle + .woocommerce-form-login *:not(.form-row-first):not(.form-row-last){grid-column: auto/span 2}

   .woocommerce-cart-form__contents .actions{padding-left: 0!important; padding-right: 0!important}
   .woocommerce-cart-form__contents .actions__inner{display: grid; grid-template-columns: 1fr auto; gap: var(--ama-gutter-x) var(--ama-gutter-double-x)}

   .woocommerce-cart-form__contents thead th{padding: 0 .75rem .75rem; font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--ama-muted-color); text-align: left}
   .woocommerce-cart-form__contents tr > *{padding: .75rem; border-top: 1px solid var(--ama-line-color)}
   .woocommerce-cart-form__contents tr > *:last-child{padding-right: 0}
   .woocommerce-cart-form__contents td.product-remove{padding-left: 0!important; width: 1.5rem}
   .woocommerce-cart-form__contents td.product-thumbnail{
      padding: .6875rem 1px;
      width: 4.5rem;
      position: relative
   }

   .woocommerce-cart-form__contents .product-price,
   .woocommerce-cart-form__contents .product-quantity{text-align: center}
   .woocommerce-cart-form__contents .product-subtotal{text-align: right}

   .woocommerce-cart-form__contents .product-quantity{width: calc(7.5rem + 1.5rem)}
   .woocommerce-cart-form__contents .product-quantity + *{width: 15%}
   .product-quantity > .quantity{max-width: 7.5rem; margin-left: auto; margin-right: auto}
   .product-quantity > .quantity .qty{width: 100%; max-width: 4.5rem; margin: 0 auto; text-align: center; padding: .5rem}
}
@media (min-width: 992px){
   form.woocommerce-checkout{--woo-grid-layout: 1fr 1fr}
   form.woocommerce-checkout > *:not(#customer_details, .woocommerce-checkout-review-order){grid-column: auto/span 2; order: 1}
   form.woocommerce-checkout > .woocommerce-NoticeGroup-checkout{order: -1!important}

   form.woocommerce-checkout > #customer_details,
   form.woocommerce-checkout > .woocommerce-checkout-review-order{position: sticky; top: calc(var(--ama-header-height-scrolled) + 1.25rem); order: -1}
}

@media (max-width: 767px){
   .woocommerce-cart-form__contents, .woocommerce-cart-form__contents > *, .woocommerce-cart-form__contents tr, .woocommerce-cart-form__contents tr > *{display: block}
   .woocommerce-cart-form__contents thead{display: none!important}
   .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item{
      --form__cart-item-offset: 0;
      padding-top: var(--form__cart-item-offset);
      position: relative;
      min-height: 3.75rem;
      padding-left: 4.375rem
   }
   .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item + tr:not([class]){margin-top: 1.25rem}
   .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item + .woocommerce-cart-form__cart-item{--form__cart-item-offset: 1.25rem; margin-top: var(--form__cart-item-offset); padding-top: var(--form__cart-item-offset); border-top: 1.5px dashed var(--ama-line-color)}
      .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > *{padding: 0}
      .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > .product-remove,
      .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > .product-thumbnail{position: absolute; top: var(--form__cart-item-offset)}
      .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > .product-remove{right: 0}
      .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > .product-thumbnail{width: 60px; height: 60px; left: 0}
      .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > [data-title]{display: grid; grid-template-columns: 1fr auto; align-items: flex-start; gap: .5rem}
      .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > [data-title] + [data-title]{margin-top: .5rem; padding-top: .5rem; border-top: 1px dashed var(--ama-line-color)}
         .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > [data-title]::before{content: attr(data-title); display: block; font-weight: 700}

      .woocommerce-cart-form__contents .woocommerce-cart-form__cart-item > .product-name{padding-right: 2rem}
      .woocommerce-cart-form__contents .product-quantity .qty{width: 4.5rem; padding: .375rem; text-align: center}

      .woocommerce-cart-form__contents .actions{padding: 0!important; margin-top: 1.25rem}
      .woocommerce-cart-form__contents .actions__inner > * + *{margin-top: .75rem}
}
@media (max-width: 567px){
   .woocommerce-cart-form__contents .actions__inner > .button{width: 100%}
}

.woocommerce-checkout .woocommerce + .woocommerce{margin-top: 1.25rem}

.woocommerce-terms-and-conditions-wrapper > * + *{margin-top: 1.25rem}
.woocommerce-terms-and-conditions-wrapper + #place_order{margin-top: 1.25rem}
.woocommerce-terms-and-conditions{padding: .9375rem; background-color: #fff}

/* password input fix */
.password-input{
   display: grid;
   grid-template-columns: 1fr auto;
   gap: 0
}
   .password-input > button{
      width: 3.125rem;
      border: none;
      color: #fff;
      background: var(--ama-primary-color);
      border-radius: 0 var(--ama-input-border-radius) var(--ama-input-border-radius) 0;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
   }
   .password-input > button::before{
      content: '';
      width: 24px;
      height: 24px;
      background: currentColor;
      mask-image: url(../images/iconmonstr-eye-thin.svg);
      mask-repeat: no-repeat;
      mask-size: 100% auto;
      mask-position: center;
      -webkit-mask-image: url(../images/iconmonstr-eye-thin.svg);
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-size: 100% auto;
      -webkit-mask-position: center;
   }
   .password-input > button.display-password::before{
      mask-image: url(../images/iconmonstr-eye-off-thin.svg);
      -webkit-mask-image: url(../images/iconmonstr-eye-off-thin.svg);
   }

.password-input > .woocommerce-Input:first-child:not(:only-child){border-top-right-radius: 0; border-bottom-right-radius: 0}
.password-input > .woocommerce-Input + .show-password-input{
   align-self: stretch;
   margin: 0!important;
   border-top-right-radius: var(--ama-input-border-radius);
   border-bottom-right-radius: var(--ama-input-border-radius)
}

/* =============================================================================
   product grid + single responsive
   ========================================================================== */
@media (max-width: 1100px){
   .pp-grid{grid-template-columns: repeat(3, minmax(0, 1fr))}
}
@media (max-width: 980px){
   .pp-grid{grid-template-columns: repeat(2, minmax(0, 1fr))}
   .pd-grid, .pd-story__inner{grid-template-columns: 1fr; gap: 2rem}
   .pp-series{grid-template-columns: 1fr; gap: .375rem}
   .pp-series > .kicker{justify-self: start}
}
@media (max-width: 640px){
   .pd-gal .secondary__splide:not(.is-initialized) .splide__list{gap: .375rem}
   .pd-gal .secondary__splide:not(.is-initialized) .splide__slide{flex-basis: calc((100% - 1.125rem) / 4)}
   .pp-grid{gap: .625rem}
   .pp-b{padding: .75rem}
   .pp-name{font-size: 1.125rem}
   .pp-card.has-price .pp-name{font-size: 1rem}
   .pp-meta{font-size: .75rem}
   .pp-st{font-size: .71875rem}
   .pp-go{display: none}
   .pp-badge{font-size: .5625rem; padding: .25rem .4375rem; left: .5rem; top: .5rem}
   .pp-card .pp-badge{left: auto; right: .5rem; max-width: calc(100% - 1rem)}
   .pp-price{font-size: 1.1875rem}
   .pp-tools, .pp-sel, .pp-sel .woocommerce-ordering{width: 100%; flex: 1}
   .pp-sel select{width: 100%}

   .pd-top{padding-bottom: 3.5rem}
   .pd-grid .summary h1{font-size: 2.5rem}
   .pd-price{font-size: 2rem}
   .pd-spec div{grid-template-columns: 6.875rem 1fr; font-size: .875rem}
   .pd-story{--ama-wave-height: 2.75rem; padding: 5.25rem 0 5rem}
   .summary form.cart .button,
   .pd-actions .wp-block-button{flex: 1 1 auto}
   .pd-actions .wp-block-button__link{width: 100%}
}

/* =============================================================================
   Leiunurk
   ========================================================================== */
.pp-badge.is-find,
.ptag.is-find{background-color: var(--ama-find-color); color: #fff}
.pp-chips a.is-find{display: inline-flex; align-items: center; gap: .375rem}
   .pp-chips a.is-find::before{content: ''; width: .5rem; height: .5rem; border-radius: 50%; background-color: var(--ama-find-color)}
   .pp-chips a.is-find.on{background-color: var(--ama-find-color); border-color: var(--ama-find-color); color: #fff}
   .pp-chips a.is-find.on::before{background-color: #fff}
   .pp-chips a.is-find.on small{color: rgba(255, 255, 255, .75)}
.pd-find{margin: 1rem 0 .25rem; padding: .875rem 1.125rem; border-left: 3px solid var(--ama-find-color); border-radius: .25rem; background-color: var(--ama-find-light-color); font-size: .9375rem; line-height: 1.5}
   .pd-find__k{display: block; margin-bottom: .125rem; font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ama-find-color)}
   .pd-find b{color: var(--ama-ink-color)}
   .pd-find p{margin: .25rem 0 0; color: var(--ama-muted-color); font-size: .875rem}

/* =============================================================================
   Product inquiry
   ========================================================================== */
.pd-inquiry{margin-top: 1.25rem; padding: 1.25rem 1.375rem 1.375rem; border-radius: var(--ama-radius-sm); background-color: var(--ama-mint-color)}
   .pd-inquiry__form{display: flex; flex-direction: column; gap: .75rem}
   .pd-inquiry__head{display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem .75rem}
   .pd-inquiry__title{margin: 0; font-family: var(--ama-font-serif); font-size: 1.375rem; font-weight: 500; line-height: 1.2}
   .pd-inquiry__intro{margin: 0; font-size: .8125rem; color: var(--ama-muted-color)}

   /* fields */
   .pd-inquiry .qf-row{grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .625rem}
   .pd-inquiry .qf-f{gap: .25rem; min-width: 0; font-size: .75rem}
      .pd-inquiry .qf-f input,
      .pd-inquiry .qf-f textarea{width: 100%; min-width: 0; padding: .625rem .875rem; font-size: .875rem; background-color: #fff}
      .pd-inquiry .qf-f input{height: 2.75rem}
      .pd-inquiry .qf-f textarea{min-height: 4rem; height: 4rem}
   .pd-inquiry .co__err{font-size: .75rem}

   /* choices as chips */
   .pi-group{margin: 0; padding: 0; border: 0; min-width: 0}
      .pi-group legend{float: none; width: auto; margin: 0 0 .375rem; padding: 0; font-size: .75rem; font-weight: 600; line-height: 1.3; color: var(--ama-muted-color)}
   .pi-chips{display: flex; flex-wrap: wrap; gap: .375rem}
   .pi-chip{position: relative; margin: 0; cursor: pointer}
      .pi-chip input{position: absolute; opacity: 0; pointer-events: none}
      .pi-chip span{display: inline-flex; align-items: center; min-height: 2.25rem; padding: .375rem 0.625rem; border: 1.5px solid var(--ama-line-color); border-radius: var(--ama-radius-sm); background-color: #fff; font-size: 0.75rem; font-weight: 600; line-height: 1.25; color: var(--ama-ink-color); transition: border-color .2s, background-color .2s, color .2s}
      .pi-chip:hover span{border-color: var(--ama-primary-color)}
      .pi-chip input:checked + span{border-color: var(--ama-primary-color); background-color: var(--ama-primary-color); color: #fff}
      .pi-chip input:focus-visible + span{box-shadow: 0 0 0 3px var(--ama-mint-color), 0 0 0 5px var(--ama-primary-color)}

   /* consent + files / submit */
   .pd-inquiry .co__consent{font-size: .75rem}
   .pd-inquiry .qf-foot{display: flex; gap: .625rem; align-items: stretch}
   .pd-inquiry .qf-file{flex: 1; min-height: 3rem; padding: 0 .75rem; gap: .5rem; background-color: #fff}
      .pd-inquiry .qf-file-t b{font-size: .8125rem}
      .pd-inquiry .qf-file-t small{font-size: .71875rem}
   .pd-inquiry .co__submit{flex: none; width: auto; margin: 0}
   .pd-inquiry .co__done{padding: .75rem 0}


@media (min-width: 981px) and (min-height: 760px){
   .pd-grid > .pd-gal{position: sticky; top: calc(var(--ama-header-height-scrolled) + 4.25rem)}
}

@media (max-width: 767px){
   .pd-inquiry{padding: 1.125rem}
      .pd-inquiry .qf-row{grid-template-columns: 1fr}
      .pd-inquiry .qf-foot{flex-direction: column}
      .pd-inquiry .co__submit{width: 100%}
}

/* =============================================================================
   Päringurežiim (functions/woo-inc/inquiry-mode.php): päringukorv
   ========================================================================== */
.cart-collaterals > .im-basket{margin: 0 auto; padding: var(--ama-gutter-double-x); border-radius: var(--ama-radius); width: 100%; max-width: 39.375rem}
   .im-basket .pd-inquiry__head{flex-direction: column; gap: .375rem}
   .im-basket .pd-inquiry__title{font-size: 1.75rem}
   .im-basket .pd-inquiry__intro{font-size: .875rem}
.im-choices{display: flex; flex-direction: column; gap: .75rem; flex: 0 0 100%; width: 100%; margin-bottom: 1rem}
.im-noprice{font-size: .875rem; color: var(--ama-muted-color)}
