/* Tema Libre · negozio: catalogo, scheda prodotto, carrello e checkout (blocchi di WooCommerce), Mio account. */

/* ---------- catalogo ---------- */
.shop{padding-bottom:clamp(64px,8vw,120px)}
.shop-head{padding:clamp(12px,2vw,24px) 0 clamp(22px,3vw,36px);max-width:860px}
.shop-head .eyebrow a{border-bottom:1px solid var(--stone)}
.shop-head .eyebrow a:hover{color:var(--red);border-color:var(--red)}
.shop-desc{color:#3A332C;font-size:16px;max-width:680px;margin-top:14px}
.shop-desc p{margin:0 0 10px}
.subcats{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 30px}
.subcats a{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border:1px solid var(--stone);border-radius:999px;font-size:13px;transition:border-color .2s,background .2s}
.subcats a small{font-size:11px;color:var(--soft)}
.subcats a:hover{border-color:var(--ink)}
.subcats a.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.subcats a.on small{color:var(--stone)}
.shop-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:14px 0;margin-bottom:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.woocommerce-result-count{margin:0;font-size:13px;color:var(--soft)}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select{width:auto;min-height:40px;padding:6px 36px 6px 12px;font-size:13px;border-color:var(--line);background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F1B17' stroke-width='1.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 10px center/16px no-repeat;-webkit-appearance:none;appearance:none}
.woocommerce-pagination{margin-top:56px}
.woocommerce-pagination ul{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:6px;flex-wrap:wrap}
.woocommerce-pagination a,.woocommerce-pagination span{display:grid;place-items:center;min-width:44px;height:44px;padding:0 8px;border:1px solid var(--line);font-size:14px}
.woocommerce-pagination a:hover{border-color:var(--ink)}
.woocommerce-pagination .current{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.shop-empty{padding:40px 0 20px;max-width:640px}
.shop-empty .h2{margin:0 0 16px}
.shop-empty p:last-child{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}

/* ---------- scheda prodotto ---------- */
.buy{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(32px,5vw,88px);align-items:start;padding-bottom:clamp(64px,8vw,120px)}
.gal{position:sticky;top:150px}
.gal-main{margin:0;aspect-ratio:1/1;background:#EFE8DE;overflow:hidden}
.gal-main a{display:block;width:100%;height:100%;cursor:zoom-in}
.gal-main img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:opacity .3s var(--ease)}
.gal-main.woocommerce-product-gallery__image--placeholder img{object-fit:cover}
.gal-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;scrollbar-width:none}
.gal-t{flex:0 0 84px;height:84px;background:#EFE8DE;border:1px solid transparent;padding:0}
.gal-t img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.gal-t.on{border-color:var(--ink)}
.info .eyebrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.info h1{font-family:var(--serif);font-weight:400;font-size:clamp(38px,4vw,58px);line-height:1.02;letter-spacing:-.018em;margin:14px 0 10px;font-optical-sizing:auto}
.info .sub{font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.35;color:#3A332C;margin:0 0 16px}
.info .sub p{margin:0}
.info .woocommerce-product-rating{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--soft);margin:6px 0}
.star-rating{position:relative;display:inline-block;width:5.4em;height:1.1em;line-height:1;font-size:13px;letter-spacing:.12em;overflow:hidden;color:var(--ink)}
.star-rating::before{content:"☆☆☆☆☆";position:absolute;inset:0}
.star-rating span{position:absolute;inset:0 auto 0 0;overflow:hidden;padding-top:1.5em}
.star-rating span::before{content:"★★★★★";position:absolute;top:0;left:0}
.summary>.price{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:24px 0 18px;font-family:var(--serif);font-weight:500;font-size:34px;line-height:1}
.summary>.price del{font-size:22px}
.summary .woocommerce-price-suffix{font:400 13px var(--sans);color:var(--soft)}
.summary form.cart{margin:10px 0 0}
table.variations{width:100%;border-collapse:collapse;margin:0 0 6px}
table.variations,table.variations tbody,table.variations tr,table.variations td,table.variations th{display:block;padding:0;text-align:left}
table.variations tr{margin-bottom:18px}
table.variations th.label{font-size:13px;margin-bottom:10px}
table.variations tr:has([data-sw]) th.label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
table.variations select{max-width:360px}
.reset_variations{display:inline-block;margin-top:10px;font-size:12px;color:var(--soft);border-bottom:1px solid var(--line)}

/* swatches: foto della pasticca con il nome sotto */
.sw-wrap{position:relative}
.sw-wrap select{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;min-height:0;padding:0;border:0;left:0;top:0}
.sw-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;margin-bottom:14px}
.sw-head b{font-weight:600}
.sw-head small{color:var(--soft);font-size:12px}
.sws{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:14px 10px}
.sw-many .sws{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));max-height:430px;overflow:auto;overscroll-behavior:contain;padding:6px 6px 6px 2px;scrollbar-width:thin}
.sw-b{display:flex;flex-direction:column;align-items:center;gap:7px;padding:4px 2px 6px;text-align:center;font-size:11px;line-height:1.25;color:var(--soft);border-radius:10px;transition:background .2s}
.sw-b:hover{background:var(--cream)}
.sw-i{position:relative;display:block;width:100%;max-width:60px;aspect-ratio:1;border-radius:50%;overflow:hidden;background:#EFE8DE;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.sw-many .sw-i{max-width:52px}
.sw-i img{width:100%;height:100%;object-fit:cover;transform:scale(1.3)}
.sw-b.on{color:var(--ink);font-weight:600}
.sw-b.on .sw-i{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--red)}
.sw-b.off{opacity:.38}
.sw-b.off .sw-i::after{content:"";position:absolute;left:50%;top:6%;bottom:6%;width:1.5px;background:var(--ink);transform:rotate(45deg)}
.sw-n{display:block;max-width:100%;overflow-wrap:break-word}
.sw-text .sws{display:flex;flex-wrap:wrap;gap:8px}
.sw-text .sw-b{flex-direction:row;padding:10px 14px;border:1px solid var(--stone);border-radius:0;font-size:13px;color:var(--ink)}
.sw-text .sw-b.on{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}

.single_variation_wrap .woocommerce-variation{margin:4px 0 14px;font-size:14px}
.woocommerce-variation-price .price{font-family:var(--serif);font-size:28px;font-weight:500}
.woocommerce-variation-availability p,.summary .stock{margin:6px 0 0;font-size:13px;color:var(--olive-d)}
.summary .stock.out-of-stock{color:var(--red)}
.woocommerce-variation-add-to-cart,.summary form.cart:not(.variations_form){display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.woocommerce-variation-add-to-cart>*,.summary form.cart:not(.variations_form)>*{flex:1 1 100%}
.woocommerce-variation-add-to-cart>.quantity,.summary form.cart:not(.variations_form)>.quantity{flex:0 0 auto}
.woocommerce-variation-add-to-cart>.single_add_to_cart_button,.summary form.cart:not(.variations_form)>.single_add_to_cart_button{flex:1 1 200px}
form.cart .quantity{display:flex;align-items:stretch;border:1px solid var(--stone);height:56px}
.quantity .qty{width:44px;min-height:0;border:0;background:transparent;text-align:center;font:500 15px var(--sans);padding:0;-moz-appearance:textfield;appearance:textfield}
.quantity .qty::-webkit-inner-spin-button,.quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.qty-b{width:40px;font-size:18px;color:var(--soft)}
.qty-b:hover{color:var(--ink)}
.single_add_to_cart_button{min-height:56px;width:100%}
.single_add_to_cart_button.disabled{opacity:.5}
.guar.sample{display:flex;gap:14px;align-items:center;margin:22px 0;padding:16px 18px;border:1.5px solid var(--red);border-left-width:5px;background:var(--red-t);color:#3A332C;font-size:14px}
.guar.sample img{width:64px;height:64px;object-fit:cover;background:#EFE8DE;mix-blend-mode:multiply;flex:none}
.guar.sample b{display:block;font-family:var(--serif);font-weight:600;font-size:19px;line-height:1.25;color:var(--ink);margin-bottom:4px}
.guar .go{display:block;width:max-content;margin-top:10px;font:600 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--red);border-bottom:2px solid var(--red);padding-bottom:4px}
.summary .ship-bar{margin:24px 0 8px;font-size:13px}
.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0 22px;font-size:12px;font-weight:500;color:#3A332C;text-align:center}
.perks div{padding:12px 6px;background:var(--cream)}
.perks svg{display:block;margin:0 auto 6px;color:var(--red)}
.pro-note{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--cream);border-left:4px solid var(--olive);font-size:14px;color:#3A332C;margin-bottom:28px}
.pro-note a{border-bottom:1px solid currentColor;white-space:nowrap;font-weight:600}
.acc{border-top:1px solid var(--stone)}
.acc details{border-bottom:1px solid var(--stone)}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font:600 12px/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font:300 22px/1 var(--sans);transition:transform .3s}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc .body{padding:0 0 22px;color:#3A332C;font-size:15px;line-height:1.7;overflow-wrap:anywhere}
.acc .body p{margin:0 0 12px}
.acc .body ul{margin:0;padding-left:18px}
.acc .body h2,.acc .body h3{font-family:var(--serif);font-weight:500;font-size:20px;margin:16px 0 8px}
.acc .body a{border-bottom:1px solid var(--red)}
.acc .body [style*="color"]{color:inherit!important}
.acc .body [style*="font-size"]{font-size:inherit!important}
.acc .body img{height:auto}
.acc .dl{display:inline-flex;gap:10px;align-items:center;font:600 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--red);border-bottom:2px solid var(--red)!important;padding-bottom:4px}
.acc .dl svg{width:16px;height:16px}
.product_meta{display:none}

/* barra fissa sul telefono */
.sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(251,248,243,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:2px solid var(--ink);padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom))}
.sticky-in{display:flex;align-items:center;gap:12px}
.sticky-buy img{width:48px;height:48px;object-fit:cover;background:#EFE8DE;mix-blend-mode:multiply;flex:none}
.sticky-buy .t{flex:1;min-width:0}
.sticky-buy b{display:block;font-family:var(--serif);font-weight:500;font-size:17px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky-buy span{display:block;font-size:12px;color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky-buy .btn{min-height:46px;padding:0 16px;font-size:11px;letter-spacing:.14em;flex:none}
body.has-sticky-buy{padding-bottom:78px}
@media (min-width:901px){.sticky-buy{display:none!important}}

/* sezioni sotto la scheda */
.why{background:var(--cream)}
.videos{display:grid;grid-template-columns:minmax(0,860px);justify-content:center;gap:clamp(14px,2vw,28px)}
.videos.two{grid-template-columns:1fr 1fr}
.yt{position:relative;display:block;width:100%;aspect-ratio:16/9;background:#EFE8DE;overflow:hidden;padding:0}
.yt img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;opacity:.55;transition:opacity .4s,transform 1s var(--ease)}
.yt:hover img{opacity:.7;transform:scale(1.03)}
.yt-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font:600 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink)}
.yt-play svg{width:72px;height:72px;color:var(--red);stroke-width:1}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.strip{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(8px,1.4vw,20px)}
.sw-big{text-align:left}
.sw-big .im{display:block;aspect-ratio:1;background:#EFE8DE;overflow:hidden}
.sw-big img{width:100%;height:100%;object-fit:cover;transform:scale(1.25);transition:transform .9s var(--ease)}
.sw-big:hover img{transform:scale(1.35)}
.sw-big.on .im{outline:2px solid var(--red);outline-offset:4px}
.sw-big b{display:block;font-family:var(--serif);font-weight:500;font-size:18px;line-height:1.2;margin:16px 0 0}
.testers{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,28px)}
.tst{display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center;padding:20px;border:1px solid var(--line)}
.tst .im{display:block;aspect-ratio:1;background:#EFE8DE}
.tst img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.tst h3{font-family:var(--serif);font-weight:500;font-size:24px;margin:6px 0 6px}
.tst p{margin:0 0 16px;color:var(--soft);font-size:14px}
.related,.up-sells{padding-top:clamp(56px,7vw,100px)}

/* recensioni */
.rv-sec .woocommerce-Reviews{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,96px)}
.woocommerce-Reviews-title{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3.4vw,46px);line-height:1.08;margin:0 0 24px}
.woocommerce-noreviews{color:var(--soft)}
.commentlist{list-style:none;margin:0;padding:0}
.commentlist li{border-top:1px solid var(--stone);padding:24px 0}
.commentlist .avatar{display:none}
.commentlist .meta{font-size:13px;color:var(--soft);margin:6px 0}
.commentlist .meta strong{color:var(--ink);font-weight:600}
.commentlist .description p{margin:0;color:#3A332C}
#review_form_wrapper{background:var(--paper);padding:clamp(20px,3vw,36px);border:1px solid var(--line)}
#reply-title{display:block;font-family:var(--serif);font-size:24px;margin-bottom:12px}
.comment-form p{margin:0 0 16px}
.comment-form label{display:block;margin-bottom:6px}
.comment-form-rating .stars a{font-size:0;display:inline-block;width:24px;height:24px;position:relative}
.comment-form-rating .stars a::before{content:"☆";font-size:22px;position:absolute;inset:0;color:var(--ink)}
.comment-form-rating .stars:hover a::before,.comment-form-rating .stars.selected a::before{content:"★"}
.comment-form-rating .stars a:hover~a::before,.comment-form-rating .stars.selected a.active~a::before{content:"☆"}
.comment-form-rating select{max-width:220px}
.form-submit input[type=submit]{display:inline-flex;min-height:52px;padding:0 28px;background:var(--red);border:1.5px solid var(--red);color:#fff;font:600 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;cursor:pointer}

/* ---------- carrello e checkout (blocchi di WooCommerce): solo stile ---------- */
.wc-page{padding-bottom:clamp(64px,8vw,120px)}
.wc-page .wp-block-woocommerce-cart,.wc-page .wp-block-woocommerce-checkout{font-family:var(--sans);color:var(--ink)}
.wc-block-components-sidebar-layout{gap:clamp(24px,4vw,56px)}
.wc-block-cart__main .wc-block-cart-items{border-top:2px solid var(--ink)}
.wc-block-cart-items__header{font:600 11px/1.4 var(--sans)!important;letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.wc-block-cart-items .wc-block-cart-items__row{border-bottom:1px solid var(--line)!important}
.wc-block-cart-item__image img,.wc-block-components-order-summary-item__image img{background:#EFE8DE;mix-blend-mode:multiply}
.wc-block-components-product-name{font-family:var(--serif)!important;font-size:19px!important;font-weight:500!important;color:var(--ink)!important;text-decoration:none!important;line-height:1.25!important}
.wc-block-components-product-name:hover{color:var(--red)!important}
.wc-block-components-product-metadata{font-size:13px;color:var(--soft)}
.wc-block-cart-item__remove-link{font-size:12px!important;color:var(--soft)!important;text-decoration:underline!important}
.wc-block-components-quantity-selector{border-radius:0!important;border:1px solid var(--stone)!important}
.wc-block-components-quantity-selector::after{display:none!important}
.wc-block-components-quantity-selector input{font-family:var(--sans)!important}
.wc-block-cart .wc-block-components-sidebar{background:var(--cream);padding:clamp(18px,2.5vw,30px)!important}
.wp-block-woocommerce-checkout-order-summary-block{background:var(--cream);border:0!important;border-radius:0!important}
.wc-block-components-order-summary-item .wc-block-components-product-name{font-size:16px!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none}
.wc-block-components-sidebar .wc-block-components-panel,.wc-block-components-totals-wrapper{border-color:var(--stone)!important}
.wc-block-cart__totals-title,.wc-block-components-checkout-order-summary__title-text{font:600 12px/1.3 var(--sans)!important;letter-spacing:.2em!important;text-transform:uppercase!important}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:var(--serif)!important;font-weight:500!important;font-size:24px!important}
.wc-block-components-button:not(.is-link),.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{min-height:56px!important;border-radius:0!important;background:var(--red)!important;color:#fff!important;border:1.5px solid var(--red)!important;font:600 12px/1.2 var(--sans)!important;letter-spacing:.2em!important;text-transform:uppercase!important;box-shadow:none!important}
.wc-block-components-button:not(.is-link):hover,.wc-block-cart__submit-button:hover,.wc-block-components-checkout-place-order-button:hover{background:var(--ink)!important;border-color:var(--ink)!important}
.wc-block-components-button.is-link{color:var(--ink)!important}
.wc-block-components-text-input input,.wc-block-components-textarea,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-blocks-components-select__select,.wc-block-components-form .wc-block-components-text-input input{border-radius:0!important;border:1px solid var(--stone)!important;background:var(--paper)!important;font-family:var(--sans)!important;color:var(--ink)!important}
.wc-block-components-text-input input:focus,.wc-blocks-components-select__select:focus{border-color:var(--ink)!important;box-shadow:0 0 0 1px var(--ink)!important}
.wc-block-components-text-input label,.wc-blocks-components-select__label{font-family:var(--sans)!important;color:var(--soft)!important}
.wc-block-components-checkout-step__title,.wc-block-components-title{font-family:var(--serif)!important;font-weight:500!important;font-size:24px!important;color:var(--ink)!important}
.wc-block-components-checkout-step__heading{margin-bottom:12px!important}
.wc-block-checkout__actions .wc-block-components-checkout-return-to-cart-button{color:var(--soft)!important}
.wc-block-components-radio-control__option,.wc-block-components-radio-control-accordion-option{border-radius:0!important}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option--checked-option-highlighted,.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted{box-shadow:inset 0 0 0 1.5px var(--red)!important}
.wc-block-components-radio-control__input:checked{border-color:var(--red)!important}
.wc-block-components-radio-control__input:checked::before{background:var(--red)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{border-radius:0!important;border-color:var(--stone)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{background:var(--red)!important;border-color:var(--red)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:#fff!important}
.wc-block-components-totals-coupon-link,.wc-block-components-panel__button{color:var(--ink)!important;font-family:var(--sans)!important}
.wc-block-components-notice-banner{border-radius:0!important}
.wc-block-components-formatted-money-amount{font-family:inherit}
.wc-block-cart .wc-block-components-product-price__value{font-weight:600}
.wc-block-components-product-badge{border-radius:0!important;font-size:10px!important;letter-spacing:.14em!important}
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{font-family:var(--serif);font-weight:400;font-size:clamp(28px,3vw,40px)}
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before{opacity:.5}
.wp-block-woocommerce-empty-cart-block hr{border:0;border-top:1px solid var(--line);margin:48px 0}
.wp-block-woocommerce-empty-cart-block h2:not(.wc-block-cart__empty-cart__title){font-family:var(--serif);font-weight:400;font-size:32px}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{gap:20px}
.wc-block-grid__product-title{font-family:var(--serif)!important;font-size:18px!important}
.wc-block-grid__product-image img{background:#EFE8DE;mix-blend-mode:multiply}

/* checkout: riepilogo un po' più largo (con il 35 % predefinito i nomi lunghi andavano a capo a ogni parola) */
.wc-block-components-sidebar-layout.is-large .wc-block-checkout__main{width:58%!important}
.wc-block-components-sidebar-layout.is-large .wc-block-checkout__sidebar{width:42%!important;padding-left:clamp(24px,3vw,48px)!important}

/* ordine ricevuto (classico) */
.woocommerce-order-overview{list-style:none;margin:0 0 32px;padding:20px;display:flex;flex-wrap:wrap;gap:16px 36px;background:var(--cream);font-size:13px;color:var(--soft)}
.woocommerce-order-overview strong{display:block;color:var(--ink);font-size:15px}
.woocommerce-thankyou-order-received{font-family:var(--serif);font-size:24px}
.woocommerce-table--order-details,.shop_table{width:100%;border-collapse:collapse;font-size:15px;margin-bottom:28px}
.shop_table th,.shop_table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.shop_table thead th{font:600 11px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--soft);border-bottom:2px solid var(--ink)}
.woocommerce-order-details__title,.woocommerce-column__title,.woocommerce-customer-details h2{font-family:var(--serif);font-weight:500;font-size:26px}
address{font-style:normal;line-height:1.7}

/* ---------- Mio account ---------- */
.woocommerce-account .wc-page>.woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-navigation a{display:flex;justify-content:space-between;align-items:center;padding:14px 0;font-size:15px}
.woocommerce-MyAccount-navigation a:hover{color:var(--red)}
.woocommerce-MyAccount-navigation .is-active a{color:var(--red);font-weight:600}
.woocommerce-MyAccount-navigation .is-active a::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--red)}
.woocommerce-MyAccount-content{min-width:0;font-size:16px;color:#3A332C}
.woocommerce-MyAccount-content>p:first-child{font-family:var(--serif);font-size:22px;color:var(--ink);line-height:1.35}
.woocommerce-MyAccount-content a:not(.button){color:var(--ink);border-bottom:1px solid var(--red)}
.woocommerce-MyAccount-content .button{min-height:42px;padding:0 18px}
.woocommerce-orders-table .button{margin:2px 4px 2px 0}
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.woocommerce-Address{padding:22px;background:var(--cream)}
.woocommerce-Address-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.woocommerce-Address-title h2,.woocommerce-Address-title h3{font-family:var(--serif);font-weight:500;font-size:22px;margin:0 0 12px}
.woocommerce form .form-row{margin:0 0 16px}
.woocommerce form .form-row label{display:block;margin-bottom:6px}
.woocommerce form .form-row .required{color:var(--red);text-decoration:none}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:calc(50% - 8px);display:inline-block;vertical-align:top}
.woocommerce form .form-row-first{margin-right:12px}
.woocommerce form .woocommerce-form__label-for-checkbox{display:flex;gap:10px;align-items:center;font-weight:400}
.woocommerce form fieldset{border:1px solid var(--line);padding:18px 20px;margin:24px 0}
.woocommerce form legend{font-family:var(--serif);font-size:20px;padding:0 8px}
.woocommerce-password-strength{font-size:13px;margin-top:6px}
#customer_login{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);grid-column:1/-1}
.woocommerce-account:not(.logged-in) .wc-page>.woocommerce{display:block}
#customer_login>div{padding:clamp(22px,3vw,40px);background:var(--cream)}
#customer_login h2{font-family:var(--serif);font-weight:500;font-size:30px;margin:0 0 20px}
.woocommerce-form-login .woocommerce-form-login__submit,.woocommerce-form-register .button{width:100%;margin-top:6px;background:var(--red);border-color:var(--red);color:#fff}
.woocommerce-form-login .woocommerce-form-login__submit:hover,.woocommerce-form-register .button:hover{background:var(--ink);border-color:var(--ink)}
.woocommerce-LostPassword{font-size:14px;margin-top:14px}
.woocommerce-LostPassword a{border-bottom:1px solid var(--red)}
.woocommerce-privacy-policy-text{font-size:13px;color:var(--soft)}
.woocommerce-privacy-policy-text a{border-bottom:1px solid currentColor}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .strip{grid-template-columns:repeat(3,1fr);row-gap:28px}
  .testers{grid-template-columns:1fr}
}
@media (max-width:900px){
  .buy{grid-template-columns:1fr;gap:26px}
  .gal{position:static;margin:0 calc(var(--gut)*-1)}
  .gal-main{aspect-ratio:1/1}
  .gal-thumbs{padding:0 var(--gut)}
  .gal-t{flex-basis:68px;height:68px}
  .rv-sec .woocommerce-Reviews{grid-template-columns:1fr}
  .videos.two{grid-template-columns:1fr}
  .woocommerce-account .wc-page>.woocommerce{grid-template-columns:minmax(0,1fr)}
  .woocommerce-MyAccount-navigation{min-width:0}
  .woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto;gap:22px;border-top:0;border-bottom:1px solid var(--line);scrollbar-width:none}
  .woocommerce-MyAccount-navigation li{border:0;flex:none}
  .woocommerce-MyAccount-navigation a{padding:12px 0;font-size:14px}
  .woocommerce-MyAccount-navigation .is-active a{box-shadow:inset 0 -2px var(--red)}
  .woocommerce-MyAccount-navigation .is-active a::after{display:none}
  .woocommerce-Addresses,#customer_login{grid-template-columns:1fr}
}
@media (max-width:768px){
  .shop_table_responsive thead{display:none}
  .shop_table_responsive tr{display:block;border-bottom:1px solid var(--line);padding:8px 0}
  .shop_table_responsive td,.shop_table_responsive th{display:block;border:0;padding:6px 0;text-align:right}
  .shop_table_responsive td::before{content:attr(data-title);float:left;margin-right:16px;font:600 11px/1.9 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--soft);text-align:left}
  .shop_table_responsive td.woocommerce-orders-table__cell-order-actions::before,.shop_table_responsive td:not([data-title])::before{content:none}
}
@media (max-width:560px){
  .info h1{font-size:36px}
  .summary>.price{font-size:30px}
  .sws{grid-template-columns:repeat(auto-fill,minmax(68px,1fr))}
  .sw-many .sws{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));max-height:380px}
  .perks{font-size:11px}
  .tst{grid-template-columns:100px 1fr;gap:16px;padding:14px}
  .strip{grid-template-columns:1fr 1fr}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%;margin-right:0}
  .shop-bar{flex-direction:column;align-items:flex-start}
  .subcats{flex-wrap:nowrap;overflow-x:auto;margin:0 calc(var(--gut)*-1) 24px;padding:0 var(--gut) 4px;scrollbar-width:none}
  .subcats a{flex:none}
}
