/* MonoItaly shop: scoped overrides for WooCommerce classic templates. */
.woocommerce #main.section{padding-top:48px;padding-bottom:64px}
.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--muted);margin-bottom:28px}
.woocommerce div.product{display:flow-root}
.woocommerce div.product div.images{width:52%;margin-bottom:36px}
.woocommerce div.product div.summary{width:43%;margin-bottom:36px}
.woocommerce div.product .product_title{font-size:clamp(28px,3vw,44px);line-height:1.15;letter-spacing:-.035em;margin:0 0 22px;overflow-wrap:break-word}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-size:22px;line-height:1.5}
.woocommerce div.product p.price{margin:0 0 24px}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--muted);font-size:16px;margin-bottom:24px}
.woocommerce div.product div.images img{width:100%;height:auto;object-fit:contain}
.woocommerce div.product form.cart{margin:24px 0}
.woocommerce div.product form.cart .variations{margin-bottom:20px;border:0}
.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{padding:0 0 12px;vertical-align:middle;text-align:left}
.woocommerce div.product form.cart .variations th{padding-right:16px;font-size:13px;font-weight:400;width:85px}
.woocommerce div.product form.cart .variations select{width:100%;max-width:100%;min-width:0;min-height:48px;padding:10px 32px 10px 12px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink)}
.woocommerce div.product form.cart .reset_variations{display:inline-block;margin-top:6px;font-size:12px}
.woocommerce div.product .woocommerce-variation-price{margin-bottom:16px}
.woocommerce .quantity .qty{width:72px;min-height:48px;border:1px solid var(--line);border-radius:0;background:white;color:var(--ink);padding:8px}
.woocommerce div.product form.cart div.quantity{margin-right:12px}
.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{background:var(--ink);color:white;border:1px solid var(--ink);border-radius:0;min-height:48px;padding:14px 22px;font-size:14px;font-weight:400;line-height:1.3;text-decoration:none}
.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,.woocommerce input.button.alt:hover{background:#383837;color:white}
.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled],.woocommerce button.button.alt.disabled,.woocommerce button.button.alt.disabled:hover{background:var(--ink);color:white;opacity:.45;padding:14px 22px;cursor:not-allowed}
.woocommerce select:focus-visible,.woocommerce .button:focus-visible,.woocommerce input:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.woocommerce div.product .product_meta{padding-top:20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.woocommerce div.product .product_meta>span{display:block;margin-bottom:5px}
.single-product.monoitaly-no-sku .product_meta .sku_wrapper{display:none}
.woocommerce div.product .woocommerce-tabs{clear:both;padding-top:24px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 28px;display:flex;flex-wrap:wrap;gap:24px}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-bottom:1px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border:0;border-radius:0;background:transparent;padding:0;margin:0}
.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 a{padding:12px 0;font-size:14px;font-weight:400;color:var(--muted)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:transparent;border-bottom:2px solid var(--ink)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)}
.woocommerce div.product .woocommerce-tabs .panel{margin:0 0 36px}
.woocommerce div.product .woocommerce-tabs .panel h2,.woocommerce div.product .related>h2,.woocommerce div.product .upsells>h2{font-size:clamp(24px,2.3vw,32px);line-height:1.2;letter-spacing:-.025em;margin:0 0 22px}
.woocommerce table.shop_attributes{border-top:1px solid var(--line);font-size:14px}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:10px 14px;font-style:normal}
.woocommerce table.shop_attributes th{font-weight:400}
.woocommerce .woocommerce-products-header__title{font-size:clamp(32px,4vw,54px);line-height:1.15}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:20px;line-height:1.3;letter-spacing:-.025em}
.woocommerce ul.products li.product .price{color:var(--ink);font-size:16px}
@media(max-width:767px){
 .woocommerce #main.section{padding-top:28px;padding-bottom:40px}
 .woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:100%;margin-bottom:28px}
 .woocommerce div.product .product_title{font-size:30px}
 .woocommerce div.product .woocommerce-tabs{padding-top:8px}
 .woocommerce div.product form.cart .variations th{width:70px}
 .woocommerce div.product .woocommerce-tabs ul.tabs{gap:18px}
 .woocommerce table.shop_attributes th{width:100px}
}

/* Cart and checkout: remove editorial width and heading rules. */
:is(.woocommerce-cart,.woocommerce-checkout) #main.wrap{max-width:1200px}
:is(.woocommerce-cart,.woocommerce-checkout) .page-heading{max-width:none;padding:48px 0 28px}
:is(.woocommerce-cart,.woocommerce-checkout) .page-heading h1{font-size:clamp(32px,4vw,48px);line-height:1.15;letter-spacing:-.035em;margin-bottom:12px}
:is(.woocommerce-cart,.woocommerce-checkout) #main .content{max-width:none;width:100%;padding-bottom:64px;overflow-wrap:break-word}
:is(.woocommerce-cart,.woocommerce-checkout) .content :is(h2,h3){font-size:24px;line-height:1.3;letter-spacing:-.025em;margin-top:0}
:is(.woocommerce-cart,.woocommerce-checkout) .content :is(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout){max-width:none;margin-inline:0;font-size:16px;line-height:1.6;--wp--preset--color--contrast:var(--ink);--wp--preset--color--base:var(--paper)}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-title{font-size:22px;line-height:1.3;letter-spacing:-.025em}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-product-name{font-size:16px;line-height:1.5;word-break:normal}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-product-metadata{font-size:14px;line-height:1.5}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-product-metadata p{margin-bottom:8px}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-product-metadata ul{margin-bottom:8px}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-totals-item{font-size:16px}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-totals-footer-item{font-size:20px}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-button:not(.is-link){background:var(--ink);color:white;border:1px solid var(--ink);border-radius:0;min-height:52px;padding:14px 22px;font-size:16px;font-weight:400;text-decoration:none;line-height:1.4}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-button:not(.is-link):hover{background:#383837;color:white}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-button:disabled{opacity:.5;cursor:not-allowed}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-order-summary .wc-block-components-order-summary-item__description{min-width:0}
:is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-order-summary .wc-block-components-order-summary-item__total-price{white-space:nowrap}
.woocommerce-checkout .content .wc-block-components-text-input input{font-size:16px}
.woocommerce-checkout .content .wc-block-components-text-input label{letter-spacing:normal}
.woocommerce-checkout .content .wc-block-components-checkout-step__description{margin-bottom:20px}
.woocommerce-checkout .content .wc-block-components-order-summary__button-text{font-size:20px;letter-spacing:-.02em}
.woocommerce-cart .content .wc-block-cart-items__header th{font-size:12px;letter-spacing:.06em;font-weight:400}
/* Keep WooCommerce's native compact layout below its large breakpoint. */
@media(min-width:1100px){
 :is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-sidebar-layout{column-gap:48px;flex-wrap:nowrap;align-items:flex-start}
 :is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-sidebar-layout .wc-block-components-main{width:calc(62% - 24px);padding-right:0;min-width:0}
 :is(.woocommerce-cart,.woocommerce-checkout) .content .wc-block-components-sidebar-layout .wc-block-components-sidebar{width:calc(38% - 24px);padding-left:0;min-width:0;margin-top:0}
}
/* Order confirmation retains readable headings and a full-width table. */
.woocommerce-order-received .content .woocommerce-order{font-size:16px}
.woocommerce-order-received .content .woocommerce-order-details{margin-top:36px}
.woocommerce-order-received .content table.shop_table{width:100%;border-color:var(--line);border-radius:0}
.woocommerce-order-received .content table.shop_table :is(th,td){padding:14px;overflow-wrap:anywhere}
.woocommerce-order-received .content .woocommerce-customer-details address{border:1px solid var(--line);border-radius:0;padding:20px}
@media(max-width:767px){
 :is(.woocommerce-cart,.woocommerce-checkout) .page-heading{padding:28px 0 20px}
 :is(.woocommerce-cart,.woocommerce-checkout) #main .content{padding-bottom:40px}
 :is(.woocommerce-cart,.woocommerce-checkout) .content :is(h2,h3,.wc-block-components-title){font-size:22px}
 .woocommerce-order-received .content ul.order_details{padding-left:0}
 .woocommerce-order-received .content ul.order_details li{float:none;border-right:0;margin:0 0 16px;padding:0}
 .woocommerce-order-received .content table.shop_table :is(th,td){padding:10px;font-size:14px}
}

/* Product names must override the editorial h3 and mobile heading rules. */
.woocommerce-checkout #main .content .wc-block-components-order-summary .wc-block-components-product-name,
.woocommerce-checkout #main .content .wc-block-components-order-summary .wc-block-components-product-name a{font-size:16px;line-height:1.45;font-weight:400;letter-spacing:normal;margin:0 0 8px;overflow-wrap:break-word;}

/* Catalog only: compact headings and full photographic compositions. */
.monoitaly-catalog #main > h1,.monoitaly-catalog #main .woocommerce-products-header__title{font-size:clamp(32px,4vw,48px);line-height:1.15;letter-spacing:-.035em;margin:0 0 24px}
.monoitaly-catalog #main .page-description h2,.monoitaly-catalog #main .term-description h2{font-size:clamp(24px,3vw,36px);line-height:1.25;letter-spacing:-.03em;margin:0 0 28px}
.monoitaly-catalog .monoitaly-catalog-nav{display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--line);padding:0 0 18px;margin:24px 0 28px;clear:both}
.monoitaly-catalog-nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:15px;border-bottom:2px solid transparent}
.monoitaly-catalog-nav a[aria-current]{border-color:var(--ink)}
.monoitaly-catalog .woocommerce-result-count{font-size:14px;color:var(--muted);padding-top:10px}
.monoitaly-catalog .woocommerce-ordering select{max-width:100%;min-height:44px;background:white;border:1px solid var(--line);padding:8px 12px;font-size:14px}
.monoitaly-catalog #main ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 32px;clear:both;padding-top:12px}
.monoitaly-catalog #main ul.products::before,.monoitaly-catalog #main ul.products::after{display:none}
.monoitaly-catalog #main ul.products li.product{float:none;width:auto;margin:0;min-width:0}
.monoitaly-catalog #main ul.products li.product a img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;background:var(--soft);margin:0 0 18px}
.monoitaly-catalog #main ul.products li.product .woocommerce-loop-product__title{font-size:19px;line-height:1.4;letter-spacing:-.02em;padding:0;margin:0 0 10px}
@media(max-width:900px){.monoitaly-catalog #main ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 22px}}
@media(max-width:540px){.monoitaly-catalog #main ul.products{grid-template-columns:1fr;gap:36px}.monoitaly-catalog .woocommerce-ordering,.monoitaly-catalog .woocommerce-result-count{float:none;width:100%}.monoitaly-catalog .woocommerce-ordering select{width:100%}.monoitaly-catalog .monoitaly-catalog-nav{gap:6px 18px}}

/* Customer account: shared styling for dashboard, forms and order details. */
.woocommerce-account #main.wrap{max-width:1200px}
.woocommerce-account .page-heading{max-width:none;padding:48px 0 28px}
.woocommerce-account .page-heading h1{font-size:clamp(32px,4vw,48px);line-height:1.15;letter-spacing:-.035em;margin-bottom:12px}
.woocommerce-account #main .content{max-width:none;width:100%;padding-bottom:64px;overflow-wrap:break-word}
.woocommerce-account #main .content h2,.woocommerce-account #main .content h3{font-size:26px;line-height:1.3;letter-spacing:-.025em;margin:0 0 22px}
.woocommerce-account #main .woocommerce{display:flow-root}
.woocommerce-account #main .woocommerce-MyAccount-navigation{width:23%;float:left}
.woocommerce-account #main .woocommerce-MyAccount-content{width:72%;float:right;min-width:0}
.woocommerce-account #main .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.woocommerce-account #main .woocommerce-MyAccount-navigation li{margin:0;border-bottom:1px solid var(--line)}
.woocommerce-account #main .woocommerce-MyAccount-navigation a{display:block;padding:13px 16px;font-size:15px;text-decoration:none;min-height:48px}
.woocommerce-account #main .woocommerce-MyAccount-navigation .is-active a{background:var(--ink);color:white}
.woocommerce-account #main .woocommerce-MyAccount-navigation a:hover{background:var(--soft);color:var(--ink)}
.woocommerce-account #main #customer_login{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.woocommerce-account #main #customer_login::before,.woocommerce-account #main #customer_login::after{display:none}
.woocommerce-account #main #customer_login > .col-1,.woocommerce-account #main #customer_login > .col-2{float:none;width:auto;min-width:0}
.woocommerce-account #main form.login,.woocommerce-account #main form.register{border:1px solid var(--line);border-radius:0;padding:28px;margin:0 0 28px}
.woocommerce-account #main .form-row{margin-bottom:18px}
.woocommerce-account #main .form-row .input-text,.woocommerce-account #main .form-row select{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:0;font-size:16px;background:white;color:var(--ink)}
.woocommerce-account #main .form-row input[type=password]{padding-right:48px}
.woocommerce-account #main .show-password-input{top:0;min-width:44px;min-height:44px}
.woocommerce-account #main .woocommerce-form-login__rememberme{margin:8px 12px}
.woocommerce-account #main fieldset{border:1px solid var(--line);padding:20px;margin:24px 0}
.woocommerce-account #main legend{padding:0 8px;font-size:18px}
.woocommerce-account #main table.shop_table{width:100%;border:1px solid var(--line);border-radius:0;font-size:14px;table-layout:auto}
.woocommerce-account #main table.shop_table th,.woocommerce-account #main table.shop_table td{padding:12px;word-break:normal;overflow-wrap:normal}
.woocommerce-account #main .woocommerce-orders-table__header-order-number,.woocommerce-account #main .woocommerce-orders-table__cell-order-number{white-space:nowrap}
.woocommerce-account #main table.shop_table .button{padding:10px 14px;min-height:44px}
.woocommerce-account #main .woocommerce-Addresses{margin-top:28px}
.woocommerce-account #main address{font-style:normal;border:1px solid var(--line);border-radius:0;padding:20px;overflow-wrap:anywhere}
.woocommerce-account #main .woocommerce-order-details{margin-top:32px}
@media(max-width:767px){
 .woocommerce-account .page-heading{padding:28px 0 20px}
 .woocommerce-account #main .content{padding-bottom:40px}
 .woocommerce-account #main .woocommerce-MyAccount-navigation,.woocommerce-account #main .woocommerce-MyAccount-content{float:none;width:100%}
 .woocommerce-account #main .woocommerce-MyAccount-navigation{margin-bottom:28px}
 .woocommerce-account #main #customer_login{grid-template-columns:1fr;gap:16px}
 .woocommerce-account #main form.login,.woocommerce-account #main form.register{padding:20px}
 .woocommerce-account #main .content h2,.woocommerce-account #main .content h3{font-size:24px}
 .woocommerce-account #main table.shop_table th,.woocommerce-account #main table.shop_table td{padding:10px;overflow-wrap:anywhere}
 .woocommerce-account #main .form-row-first,.woocommerce-account #main .form-row-last{float:none;width:100%}
}

/* Space between stacked billing and shipping addresses. */
@media(max-width:767px){
 .woocommerce-account #main .woocommerce-customer-details .woocommerce-column--shipping-address,
 .woocommerce-order-received #main .woocommerce-customer-details .woocommerce-column--shipping-address{margin-top:32px}
}

/* Consolidated checkout colours from Additional CSS. */
body.woocommerce-checkout #payment {
    background: #f5f4f0 !important;
    border-radius: 0 !important;
}

body.woocommerce-checkout #payment div.payment_box {
    background: #fff !important;
    color: #191918 !important;
}

body.woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color: #fff !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
    border-bottom-color: #deded7 !important;
}

