.elementor-widget:not(:last-child){margin-bottom:0}.elementor-widget-container{width:100%}.qn-commerce{padding-top:135px;padding-bottom:64px}.qn-commerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.qn-commerce .woocommerce ul.products li.product{width:100%;margin:0}.qn-commerce input,.qn-commerce select{border:1px solid #dce2e9;border-radius:10px;padding:12px;background:white}.qn-commerce .button{border-radius:999px!important;background:#0868f9!important;color:white!important;padding:14px 24px!important}.qn-commerce div.product div.images{max-width:42%}.qn-commerce .woocommerce-product-gallery__image img{max-height:480px;object-fit:contain}.qn-commerce .summary{max-width:50%}.qn-commerce .price{font-weight:700;color:#061a39!important}.qn-editor-placeholder{padding:24px;background:#f5f7fa;color:#061a39}.elementor-editor-active .store-header{position:relative}.elementor-editor-active .collection-carousel{overflow-x:auto}.qn-commerce .woocommerce-error,.qn-commerce .woocommerce-info,.qn-commerce .woocommerce-message{border-radius:12px}.qn-commerce .woocommerce-checkout{max-width:1100px;margin:auto}@media(max-width:767px){.qn-commerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.qn-commerce div.product div.images,.qn-commerce .summary{max-width:100%;width:100%}.qn-commerce{padding-top:150px}}
.qn-commerce.qn-purchase-form{padding:0}.qn-checkout{max-width:1200px;background:#f5f7fa}.qn-checkout .checkout-intro{margin-bottom:32px}.qn-checkout form.checkout{padding:32px;border-radius:14px;background:white}.qn-checkout [hidden]{display:none!important}.qn-checkout #customer_details{display:grid;grid-template-columns:1fr 1fr;gap:32px}.qn-checkout #customer_details .col-1,.qn-checkout #customer_details .col-2{float:none;width:100%}.qn-checkout #payment{background:#f5f7fa;border-radius:12px}.qn-checkout .form-row input.input-text,.qn-checkout .form-row select{width:100%;height:48px}.qn-checkout .qn-review{margin-top:24px}.qn-checkout table{border-radius:12px;border-color:#dce2e9}.elementor-widget-qn-collection{margin-block:64px}.elementor-widget-qn-guide{margin-block:64px}.qn-sort{appearance:base-select;border:0;background:#f5f7fa;border-radius:10px;padding:10px} .qn-sort::picker(select){appearance:base-select;border:1px solid #dce2e9;border-radius:12px;padding:8px}.qn-checkout .checkout-steps{max-width:700px} @media(max-width:767px){.qn-checkout #customer_details{grid-template-columns:1fr}.qn-checkout form.checkout{padding:20px}.elementor-widget-qn-collection{margin-block:40px}}
.elementor-widget-qn-collection,.elementor-widget-qn-guide{margin-block:0!important}.elementor-widget-qn-guide + .elementor-widget-qn-collection .collection{border-top:0}.qn-purchase-form .cart{display:flex;align-items:center;gap:16px}.qn-purchase-form .quantity input{width:80px}.qn-commerce .input-text{font:inherit}.qn-checkout .checkout-navigation [hidden]{display:none!important}
.checkout-page .qn-checkout{padding-top:48px;padding-bottom:72px}.qn-checkout form.checkout{padding:0;background:transparent}.qn-checkout #customer_details{display:block}.qn-checkout #customer_details .col-1,.qn-checkout #customer_details .col-2{width:100%}.qn-checkout .checkout-panel h3{font-size:22px;font-weight:600;margin-bottom:20px}.qn-checkout #payment{background:transparent}.qn-checkout #payment ul.payment_methods{border:0;padding:0}.qn-checkout #payment ul.payment_methods li{margin-bottom:12px;padding:18px;border:1px solid #d3deeb;border-radius:10px}.qn-checkout .checkout-summary table{border:0;font-size:13px}.qn-checkout #payment .place-order{padding:20px 0 0}.qn-checkout #place_order{width:100%}.qn-checkout .checkout-panel input,.qn-checkout .select2-container .select2-selection--single{border-radius:8px;border:1px solid #d3deeb;background:white}.qn-checkout .select2-container .select2-selection--single{min-height:48px;padding-top:9px}.qn-checkout .select2-container .select2-selection__arrow{top:12px}.qn-checkout .checkout-summary{position:sticky;top:24px}.qn-checkout .qn-review h2{font-size:26px}.qn-purchase-form .cart{flex-wrap:wrap}.qn-purchase-form .quantity-picker{display:flex;align-items:center}.qn-purchase-form .quantity-picker button{border:0;background:#f5f7fa;height:46px;width:36px}.qn-purchase-form .quantity-picker input{border:0!important;width:48px!important;text-align:center}@media(max-width:767px){.qn-checkout .checkout-summary{position:static}.qn-checkout form.checkout{padding:0}}

/* Part finder (category → brand → line): selects keep the storefront style; a select waiting for options is dimmed */
.qn-finder.is-loading select:disabled{cursor:progress;opacity:.6}
.qn-finder>button:disabled{cursor:not-allowed}

/* Catalog filters rendered by PHP (inc/catalog.php): links take the look of categoria.css buttons */
.qn-catalog-form .filter-caption #clear-filters{border:0;color:#0753c6;background:none;min-height:44px;padding:8px 0 8px 8px;font-size:12px;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center}
.qn-catalog-form .filter-caption button#clear-filters:disabled{color:#8a96a8;text-decoration:none;cursor:default}
.qn-catalog-form .sidebar-categories a.is-child{padding-left:24px;font-size:12px}
.qn-catalog-form .sidebar-categories a.is-child::before{content:'';width:6px;height:1px;margin-right:-4px;background:#a9b6c8;flex:none}
.qn-catalog-form .filter-apply{width:100%;margin-top:16px}
.qn-catalog-form.is-enhanced .filter-apply{display:flex;justify-content:center}
.qn-catalog-form .active-filters a{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border:1px solid #dae5f5;border-radius:8px;color:#07428e;background:#edf5ff;font-size:12px}
.qn-catalog-form .active-filters a:hover{background:#dceaff;border-color:#0753c6}
.qn-catalog-form .active-filters .ui-icon{width:14px;height:14px}
.qn-catalog-form .category-pagination{gap:6px;margin-top:36px}
.qn-catalog-form .category-pagination :is(a,span){display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid #e0e6ee;border-radius:8px;background:#fff;color:var(--ink);font-size:13px;font-variant-numeric:tabular-nums}
.qn-catalog-form .category-pagination a:hover{background:#f0f5fc}
.qn-catalog-form .category-pagination [aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}
.qn-catalog-form .category-pagination .is-disabled{color:#8a96a8;cursor:default}
.qn-catalog-form .category-pagination .pagination-gap{min-width:24px;padding:0;border:0;background:transparent;color:#52617a}
.qn-catalog-form .facet-group summary::-webkit-details-marker{display:none}
.qn-catalog-form .qn-results-empty{grid-column:1/-1}
/* Product page: description and specification list as in produto.html */
.product-information .product-description,.product-information .product-description p{max-width:540px;color:var(--muted);font-size:14px;line-height:1.8}
.product-information .product-description p{margin:0 0 12px}
.product-information #product-specs{margin:0}
/* Header menu: invisible bridge over the gap between the button and the dropdown, so hover is not lost on the way down.
   Anchored on the summary: the dropdown scrolls (overflow:auto) and would clip a bridge placed inside it. */
.store-category-menu[open]>summary::after{content:'';position:absolute;left:0;top:100%;width:300px;height:18px}
/* Hero: poster image under the video (LCP); the video covers it once it plays */
.video-section .video-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* FiboSearch in the header: our wrapper keeps the header pill (transparent over the hero, white when scrolled);
   the plugin's "Pirx" box is made transparent inside it. Suggestions open in FiboSearch's own panel. */
.store-header .header-search--fibo{overflow:visible;padding:0}
.store-header .header-search--fibo .dgwt-wcas-search-wrapp{width:100%;min-width:0;max-width:none;margin:0;height:100%}
.store-header .header-search--fibo .dgwt-wcas-search-form{height:100%}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp{display:flex;align-items:center;height:100%;padding:0;border:0;border-radius:999px;background:transparent;box-shadow:none}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input{order:2;flex:1;min-width:0;height:100%;margin:0;padding:0 16px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;font:inherit;font-size:16px;line-height:normal}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input::placeholder{color:inherit;opacity:.8}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input:focus::placeholder{opacity:0}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit{position:static;order:1;display:grid;place-items:center;flex:none;width:52px;height:100%;min-height:0;margin:0;padding:0 0 0 10px;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit::before{display:none}
.store-header .header-search--fibo .dgwt-wcas-ico-magnifier{width:20px;height:20px;max-width:none;fill:currentColor;opacity:1}
.store-header .header-search--fibo .dgwt-wcas-voice-search{display:none}
/* Suggestions panel in the store's style */
.dgwt-wcas-suggestions-wrapp{border:1px solid #e0e6ee!important;border-radius:12px!important;box-shadow:0 12px 32px #061a3914!important;overflow:hidden}
.dgwt-wcas-suggestion{padding:10px 14px!important;color:var(--ink,#061a39)}
.dgwt-wcas-suggestion-selected{background:#f0f5fc!important}
.dgwt-wcas-suggestion .dgwt-wcas-st strong,.dgwt-wcas-suggestion strong{color:var(--blue,#0868f9)}
.store-header .header-search--fibo .dgwt-wcas-search-wrapp,.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input{color:inherit}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit svg.dgwt-wcas-ico-magnifier{position:static;inset:auto;transform:none}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit svg path,.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-close path{fill:currentColor}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit:hover{background:transparent;box-shadow:none}
.store-header .header-search--fibo .dgwt-wcas-style-pirx .dgwt-wcas-close{color:inherit;right:14px}
/* Clear button (FiboSearch preloader/close): Pirx keeps it 52px in, leaving room for a submit button that moves right;
   here the magnifier stays on the left, so it sits at the edge and the text leaves room for it. */
.store-header .header-search--fibo .dgwt-wcas-search-wrapp.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp .dgwt-wcas-preloader{right:22px!important;left:auto;margin-right:0} /* !important: FiboSearch JS writes right:52px inline */
.store-header .header-search--fibo .dgwt-wcas-search-wrapp.dgwt-wcas-style-pirx.dgwt-wcas-search-filled .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input{padding-right:56px}
/* Checkout polish: one field style (same as My account), store-style notices, coupon inside the summary */
.qn-checkout{--wc-form-border-color:#c9d4e3;--wc-form-border-radius:8px;--wc-form-border-width:1px;--wc-form-color-text:var(--ink)}
.qn-checkout .woocommerce form .form-row label{font-size:14px;font-weight:600;line-height:1.4;margin-bottom:6px}
.qn-checkout .woocommerce form .form-row :is(.input-text,select){height:48px;padding:0 14px;border:1px solid var(--wc-form-border-color);border-radius:8px;background:#fff;font-size:16px;line-height:48px;color:var(--ink);transition:border-color .15s ease-out,box-shadow .15s ease-out}
.qn-checkout .woocommerce form .form-row textarea.input-text{height:auto;min-height:96px;padding:12px 14px;line-height:1.5}
.qn-checkout .woocommerce form .form-row :is(.input-text,select):focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px #0868f933}
.qn-checkout .woocommerce form .form-row.woocommerce-validated :is(.input-text,select,.select2-selection){border-color:var(--wc-form-border-color)}
.qn-checkout .woocommerce form .form-row.woocommerce-invalid :is(.input-text,select,.select2-selection){border-color:#a1271b}
.qn-checkout .woocommerce form .form-row .input-text::placeholder{color:#7a879b}
.qn-checkout .select2-container .select2-selection--single{height:48px;border:1px solid var(--wc-form-border-color);border-radius:8px}
.qn-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:46px;padding-left:14px;color:var(--ink)}
.qn-checkout .select2-container .select2-selection--single .select2-selection__arrow{top:11px;right:8px}
.qn-checkout #ship-to-different-address{margin:28px 0 16px;font-size:16px;font-weight:600;line-height:1.4}
.qn-checkout #ship-to-different-address label{display:inline-flex;align-items:center;gap:10px;cursor:pointer}
.qn-checkout #ship-to-different-address input{width:18px;height:18px;margin:0;accent-color:var(--blue)}
.qn-checkout .checkout-flow>.checkout-steps{border-radius:16px 16px 0 0}
.qn-checkout .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0 0 20px;padding:14px 16px 14px 44px;border:0;border-radius:12px;font-size:14px;line-height:1.5}
.qn-checkout .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before{top:15px;left:16px}
.qn-checkout .woocommerce .woocommerce-message{background:#e3f6ea;color:#0f4f2a}
.qn-checkout .woocommerce .woocommerce-message::before{color:#14713b}
.qn-checkout .woocommerce .woocommerce-info{background:#e8f1ff;color:#0b3d82}
.qn-checkout .woocommerce .woocommerce-info::before{color:#0650c2}
.qn-checkout .woocommerce .woocommerce-error{background:#fde8e6;color:#6e1a12}
.qn-checkout .woocommerce .woocommerce-error::before{color:#a1271b}
.qn-commerce.qn-checkout .woocommerce-message .button{order:2;float:none;min-height:0;padding:0!important;border-radius:0!important;background:transparent!important;color:inherit!important;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.qn-coupon{margin:16px 0 0;padding:16px 0 0;border-top:1px solid #edf0f5}
.qn-coupon-toggle{min-height:32px;padding:0;border:0;background:none;color:#0753c6;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.qn-coupon-toggle:focus-visible,.qn-coupon-apply:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.qn-coupon-field{display:flex;gap:8px;margin-top:10px}
.qn-coupon-field[hidden],.qn-coupon-message[hidden]{display:none}
.qn-coupon-field input{flex:1;min-width:0;height:44px;padding:0 12px;border:1px solid #c9d4e3;border-radius:8px;background:#fff;font:inherit;font-size:15px;color:var(--ink);text-transform:uppercase}
.qn-coupon-field input:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px #0868f933}
.qn-coupon-apply{flex:none;height:44px;padding:0 18px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-size:13px;font-weight:700;cursor:pointer}
.qn-coupon.is-loading .qn-coupon-apply{opacity:.6;cursor:progress}
.qn-coupon-message{margin:8px 0 0;font-size:13px;line-height:1.5;color:#14713b}
.qn-coupon-message.is-error{color:#a1271b}
.qn-checkout .woocommerce .select2-container .select2-selection--single{padding-top:0}
.qn-checkout .woocommerce form.woocommerce-checkout{max-width:none}
.qn-commerce.qn-checkout .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){border:0;outline:0;box-shadow:none}
.qn-checkout .woocommerce .select2-container{width:100%!important} /* !important: selectWoo writes an inline width */
.qn-checkout .woocommerce .select2-container .select2-selection--single{display:flex;align-items:center}
.qn-checkout .woocommerce .select2-container .select2-selection--single .select2-selection__rendered{flex:1;padding-top:0;line-height:1.4}
.qn-checkout .checkout-flow>.checkout-steps{max-width:none}
.qn-checkout .woocommerce .select2-container .select2-selection--single .select2-selection__arrow{top:0;right:10px;height:100%}
/* Favorites heart (TI WooCommerce Wishlist button, restyled). Outline = add, filled red = saved.
   Card: centred on the "% no Pix" badge's line, mirrored to the right edge of the photo. */
.product-card{position:relative}
.qn-fav{position:absolute;z-index:2;line-height:0}
.qn-fav--card{top:23px;right:16px}
.qn-fav--product{top:16px;right:16px}
.gallery-main{position:relative}
.qn-fav .tinv-wraper.tinv-wishlist{margin:0!important;padding:0!important;line-height:0}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart{position:relative;display:grid!important;place-items:center;width:36px!important;height:36px!important;min-width:0;margin:0!important;padding:0!important;border:0;border-radius:50%;background:#fff!important;box-shadow:0 1px 3px #061a391f,0 4px 12px #061a390f;color:var(--ink);font-size:0!important;line-height:0;text-decoration:none;cursor:pointer;transition:color .15s ease-out,transform .15s ease-out}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart::before{content:''!important;position:static!important;inset:auto!important;display:block;width:18px;height:18px;margin:0!important;font-family:inherit!important;font-size:0!important;background:currentColor;-webkit-mask:url('./assets/icons/lucide/heart.svg') center/contain no-repeat;mask:url('./assets/icons/lucide/heart.svg') center/contain no-repeat}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart::after{display:none!important}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:hover{color:#e5484d}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:active{transform:scale(.92)}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list{color:#e5484d}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list::before{-webkit-mask:none;mask:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e5484d' stroke='%23e5484d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") center/contain no-repeat}
.qn-fav--product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart{width:44px!important;height:44px!important}
.qn-fav--product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart::before{width:20px;height:20px}
.qn-fav .tinvwl-tooltip{display:none!important}
@media(prefers-reduced-motion:reduce){.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart{transition:none}}
@media(max-width:600px){.qn-fav--card{top:17px;right:16px}.qn-fav--card .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart{width:32px!important;height:32px!important}.qn-fav--card .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart::before{width:16px;height:16px}}
/* Header heart: count badge like the cart's */
.store-header .favorites-link .qn-fav-count{position:absolute;top:-2px;right:-4px;display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--ink);color:#fff;font-size:10px;font-weight:700;line-height:1}
.store-header .favorites-link .qn-fav-count:empty{display:none}
/* Favorites page: the catalog's product grid with a page header */
.qn-commerce:has(.qn-favorites){padding-top:clamp(32px,5vw,56px);padding-bottom:clamp(48px,6vw,80px)}
.qn-favorites{color:var(--ink)}
.qn-favorites-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin:0 0 32px;padding:0 0 24px;border-bottom:1px solid var(--line)}
.qn-favorites-head h1{margin:0 0 8px;font-size:clamp(32px,3.6vw,48px);font-weight:700;line-height:1.05;letter-spacing:-.03em}
.qn-favorites-head p{margin:0;color:var(--muted);font-size:15px}
.qn-favorites-share .ui-icon{width:16px;height:16px}
.qn-favorites-status{margin:0 0 16px;color:#14713b;font-size:14px;font-weight:600}
.qn-favorites-status:empty{display:none}
.qn-favorites .qn-favorites-empty{padding-top:clamp(24px,6vw,72px)}
/* Favorites page: the card heart is TI's remove submit, drawn as the filled "saved" heart */
.qn-fav .qn-fav-remove{display:grid;place-items:center;width:36px;height:36px;margin:0;padding:0;border:0;border-radius:50%;background:#fff;box-shadow:0 1px 3px #061a391f,0 4px 12px #061a390f;cursor:pointer;transition:transform .15s ease-out}
.qn-fav .qn-fav-remove::before{content:'';display:block;width:18px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e5484d' stroke='%23e5484d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") center/contain no-repeat}
.qn-fav .qn-fav-remove:hover{transform:scale(1.06)}
.qn-fav .qn-fav-remove:active{transform:scale(.92)}
.qn-fav .qn-fav-remove:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
@media(max-width:600px){.qn-fav .qn-fav-remove{width:32px;height:32px}.qn-fav .qn-fav-remove::before{width:16px;height:16px}}
@media(prefers-reduced-motion:reduce){.qn-fav .qn-fav-remove{transition:none}}
/* Cart drawer: quantity stepper (− n +) and trash, replacing "Editar quantidade / Remover" */
.cart-dialog .cart-item-price{display:block;margin-top:4px;font-size:15px;font-weight:700;color:var(--ink)}
.cart-dialog .quantity-controls{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.qn-stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#fff}
.cart-dialog .qn-stepper button{display:grid;place-items:center;width:40px!important;height:40px!important;margin:0;padding:0;border:0!important;border-radius:50%!important;background:transparent!important;color:var(--ink);cursor:pointer;transition:background-color .15s ease-out}
.cart-dialog .qn-stepper button:hover:not(:disabled){background:var(--pale)!important}
.cart-dialog .qn-stepper button:active:not(:disabled){transform:scale(.92)}
.cart-dialog .qn-stepper button:disabled{color:#b8c2d1;cursor:not-allowed}
.cart-dialog .qn-stepper .ui-icon,.cart-dialog .cart-remove .ui-icon{width:16px;height:16px;color:currentColor}
.qn-stepper output{min-width:28px;font-size:15px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}
.cart-dialog .quantity-controls .cart-remove{display:grid;place-items:center;width:40px;min-height:40px;height:40px;padding:0;border-radius:50%;color:var(--muted);text-decoration:none;transition:color .15s ease-out,background-color .15s ease-out}
.cart-dialog .quantity-controls .cart-remove:hover{background:#fde8e6;color:#a1271b}
.cart-dialog :is(.qn-stepper button,.cart-remove):focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.cart-dialog .cart-item[aria-busy=true]{opacity:.55;transition:opacity .15s ease-out}
.cart-dialog .cart-item .is-waiting{pointer-events:none}
@media(pointer:coarse){.cart-dialog .qn-stepper button,.cart-dialog .quantity-controls .cart-remove{width:44px!important;height:44px!important}}
@media(prefers-reduced-motion:reduce){.cart-dialog .qn-stepper button,.cart-dialog .cart-remove,.cart-dialog .cart-item[aria-busy=true]{transition:none}}
.cart-dialog .cart-item-price span{display:inline;margin:0;font-size:inherit}
.tinv-wishlist.qn-favorites .tinv-header{display:none!important}
.qn-favorites .blockUI.blockOverlay{border-radius:14px}
/* Cart page (WooCommerce Cart block) inside the commerce container */
.qn-commerce:has(.wp-block-woocommerce-cart){padding-top:clamp(32px,5vw,56px);padding-bottom:clamp(48px,6vw,80px)}
.qn-page-title{margin:0 0 32px;padding:0 0 24px;border-bottom:1px solid var(--line);font-size:clamp(32px,3.6vw,48px);font-weight:700;line-height:1.05;letter-spacing:-.03em}
/* Cart page (woocommerce/cart/cart.php): lines on the left, order summary on the right */
.qn-cart-page{padding-top:clamp(32px,5vw,56px);padding-bottom:clamp(48px,6vw,80px);color:var(--ink)}
.qn-cart-page .woocommerce-notices-wrapper:empty{display:none}
.qn-cart-page :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0 0 24px;padding:14px 18px;border:0;border-radius:12px;background:var(--pale);color:var(--ink);font-size:14px;line-height:1.5;list-style:none;outline:0}
.qn-cart-page :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before{display:none}
.qn-cart-page .woocommerce-message{background:#e3f6ea;color:#14713b}
.qn-cart-page .woocommerce-error{background:#fde8e6;color:#a1271b}
.qn-cart-page .woocommerce-message .button{order:2;margin:0;padding:0!important;border:0!important;background:none!important;color:inherit!important;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.qn-cart{display:grid;grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:clamp(24px,4vw,48px)}
.qn-cart-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.qn-cart-line{display:grid;grid-template-columns:96px minmax(0,1fr) auto 120px 44px;align-items:center;gap:20px;margin:0;padding:20px 0;border-bottom:1px solid var(--line)}
.qn-cart-thumb img{display:block;width:96px;height:96px;padding:6px;border-radius:12px;background:#f6f7f9;object-fit:contain;mix-blend-mode:multiply}
.qn-cart-name{display:block;color:var(--ink);font-size:15px;font-weight:700;line-height:1.4;text-decoration:none}
.qn-cart-name:hover{color:var(--blue)}
.qn-cart-unit{margin:6px 0 0;color:var(--muted);font-size:13px}
.qn-cart-info dl.variation{margin:6px 0 0;font-size:13px;color:var(--muted)}
.qn-cart-subtotal{font-size:16px;font-weight:700;text-align:right;white-space:nowrap}
.qn-cart .qn-stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#fff}
.qn-cart .qn-stepper button{display:grid;place-items:center;width:40px;height:40px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;transition:background-color .15s ease-out}
.qn-cart .qn-stepper button:hover:not(:disabled){background:var(--pale)}
.qn-cart .qn-stepper button:active:not(:disabled){transform:scale(.92)}
.qn-cart .qn-stepper button:disabled{color:#b8c2d1;cursor:not-allowed}
.qn-cart .qn-stepper .ui-icon,.qn-cart-trash .ui-icon{width:16px;height:16px;color:currentColor}
.qn-cart .qn-stepper .quantity{margin:0;border:0}
.qn-cart .qn-stepper input.qty{width:36px;height:40px;margin:0;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;font-size:15px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}
.qn-cart .qn-stepper input.qty::-webkit-inner-spin-button,.qn-cart .qn-stepper input.qty::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
.qn-cart .qn-stepper input.qty:focus-visible{outline:2px solid var(--blue);outline-offset:-2px;border-radius:6px}
.qn-cart-single{color:var(--muted);font-size:14px}
.qn-cart .product-remove a.remove.qn-cart-trash{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:transparent;color:var(--muted)!important;font-size:0;text-decoration:none;transition:color .15s ease-out,background-color .15s ease-out}
.qn-cart .product-remove a.remove.qn-cart-trash:hover{background:#fde8e6;color:#a1271b!important}
.qn-cart :is(.qn-stepper button,.qn-cart-trash,.qn-cart-continue,summary):focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.qn-cart-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 0 0}
.qn-cart-continue{display:inline-flex;align-items:center;min-height:40px;color:var(--ink);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#bfccd9}
.qn-cart-continue:hover{color:var(--blue)}
.qn-cart-coupon summary{display:inline-flex;align-items:center;min-height:40px;color:var(--ink);font-size:14px;font-weight:700;cursor:pointer;list-style:none}
.qn-cart-coupon summary::-webkit-details-marker{display:none}
.qn-cart-coupon summary::after{content:"";width:16px;height:16px;margin-left:6px;background:currentColor;-webkit-mask:url("./assets/icons/lucide/chevron-down.svg") center/contain no-repeat;mask:url("./assets/icons/lucide/chevron-down.svg") center/contain no-repeat;transition:transform .2s ease-out}
.qn-cart-coupon[open] summary::after{transform:rotate(180deg)}
.qn-cart-coupon .coupon{display:flex;gap:8px;margin-top:8px}
:is(.qn-cart-coupon,.qn-ship-calc,.qn-ship-quote) input.input-text{height:44px;min-width:0;width:100%;margin:0;padding:0 14px;border:1px solid #c9d4e3;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:15px;font-variant-numeric:tabular-nums}
:is(.qn-cart-coupon,.qn-ship-calc,.qn-ship-quote) input.input-text:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #0868f926}
:is(.qn-cart-coupon,.qn-ship-calc,.qn-ship-quote) .button{flex:none;height:44px;margin:0;padding:0 18px!important;border:1px solid var(--ink)!important;border-radius:10px!important;background:var(--ink)!important;color:#fff!important;font-size:14px!important;font-weight:700;line-height:1;cursor:pointer}
:is(.qn-cart-coupon,.qn-ship-calc,.qn-ship-quote) .button:hover:not(:disabled){background:#13284a!important}
:is(.qn-cart-coupon,.qn-ship-calc,.qn-ship-quote) .button:disabled{opacity:.6;cursor:progress}
.woocommerce-js .qn-cart-update{display:none!important}
/* Summary card (WooCommerce cart-totals.php) */
.qn-cart-summary{position:sticky;top:120px;float:none!important;width:auto!important}
.qn-cart-summary .cart_totals{float:none!important;width:auto!important;padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff}
.qn-cart-summary .cart_totals h2{margin:0 0 8px;font-size:20px;font-weight:700;letter-spacing:-.01em;text-transform:none}
.qn-cart-summary .cart_totals table.shop_table{display:block;width:100%;margin:0;border:0;border-radius:0;font-size:14px}
.qn-cart-summary .cart_totals table.shop_table tbody{display:block}
.qn-cart-summary .cart_totals table.shop_table tr{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:12px 0;border-top:1px solid var(--line)}
.qn-cart-summary .cart_totals table.shop_table tr:first-child{border-top:0}
.qn-cart-summary .cart_totals table.shop_table :is(th,td){display:block;padding:0;border:0;background:none;font-weight:400;text-align:left}
.qn-cart-summary .cart_totals table.shop_table th{color:var(--muted)}
.qn-cart-summary .cart_totals table.shop_table td{text-align:right;color:var(--ink)}
.qn-cart-summary .cart_totals table.shop_table td::before{display:none}
.qn-cart-summary .cart_totals tr.fee td{color:#14713b;font-weight:700}
.qn-cart-summary .cart_totals tr.woocommerce-shipping-totals{display:block}
.qn-cart-summary .cart_totals tr.woocommerce-shipping-totals th{margin-bottom:10px;color:var(--ink);font-weight:700}
.qn-cart-summary .cart_totals tr.woocommerce-shipping-totals td{text-align:left}
.qn-cart-summary .woocommerce-shipping-methods{margin:0 0 12px;padding:0;list-style:none}
.qn-cart-summary .woocommerce-shipping-methods li{display:flex;align-items:flex-start;gap:10px;margin:0;padding:8px 0;text-align:left}
.qn-cart-summary .woocommerce-shipping-methods input{flex:none;margin:3px 0 0;accent-color:var(--blue)}
.qn-cart-summary .woocommerce-shipping-methods label{flex:1;font-size:14px;line-height:1.45}
.qn-cart-summary .woocommerce-shipping-destination,.qn-cart-summary .woocommerce-shipping-totals td>p{margin:0 0 12px;color:var(--muted);font-size:13px;line-height:1.5}
.qn-cart-summary .cart_totals tr.order-total{align-items:baseline;padding-top:16px}
.qn-cart-summary .cart_totals tr.order-total th{color:var(--ink);font-size:15px;font-weight:700}
.qn-cart-summary .cart_totals tr.order-total td{font-size:24px;font-weight:700;letter-spacing:-.02em}
.qn-cart-summary .cart_totals tr.order-total td strong{font-weight:inherit}
.qn-cart-summary .cart_totals tr.order-total td small{display:block;font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0}
.qn-cart-summary .wc-proceed-to-checkout{margin:16px 0 0;padding:0}
.qn-cart-summary .wc-proceed-to-checkout a.checkout-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin:0;padding:0 20px!important;border-radius:999px!important;background:var(--blue)!important;color:#fff!important;font-size:16px!important;font-weight:700;text-decoration:none}
.qn-cart-summary .wc-proceed-to-checkout a.checkout-button:hover{background:var(--ink)!important}
/* Shipping calculators: CEP only (cart summary and product page) */
.qn-ship-calc{margin:0}
.qn-ship-calc .shipping-calculator-form{display:block!important;margin:0;padding:0}
:is(.qn-ship-calc,.qn-ship-quote) label{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:var(--ink);font-size:14px;font-weight:700}
.qn-ship-calc-row{display:flex;gap:8px}
.qn-ship-calc-help{display:inline-block;margin-top:8px;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:3px}
.qn-ship-calc-help:hover{color:var(--blue)}
.qn-cart .blockUI.blockOverlay{border-radius:16px}
.qn-ship-quote{margin:20px 0 0;padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff}
.qn-ship-quote label .ui-icon{width:18px;height:18px;color:var(--blue)}
.qn-ship-quote-result:empty{display:none}
.qn-ship-quote-result{margin-top:16px}
.qn-ship-quote-result ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.qn-ship-quote-result li{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:12px 0;border-bottom:1px solid var(--line)}
.qn-ship-quote-result li span{display:flex;flex-direction:column;gap:2px;min-width:0}
.qn-ship-quote-result li strong{font-size:14px;font-weight:700;color:var(--ink)}
.qn-ship-quote-result li small{font-size:13px;color:var(--muted)}
.qn-ship-quote-result li b{flex:none;font-size:15px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.qn-ship-quote-result li.is-cheapest b{color:#14713b}
.qn-ship-quote-result p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.qn-ship-quote-result .qn-ship-quote-note{margin-top:10px}
.qn-ship-quote-result.is-error p{color:#a1271b}
.qn-ship-quote.is-loading .qn-ship-quote-wait{animation:qn-pulse 1.2s ease-in-out infinite}
@keyframes qn-pulse{50%{opacity:.45}}
#woocommerce-correios-calculo-de-frete-na-pagina-do-produto{display:none!important}
/* Product page buy buttons: same size, "Adicionar" outlined, "Comprar agora" solid */
.product-main form.cart{display:grid!important;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:12px}
.product-main form.cart>.quantity{height:52px;margin:0!important}
.product-main form.cart :is(.single_add_to_cart_button,.product-buy){display:inline-flex!important;align-items:center;justify-content:center;gap:8px;width:100%;min-width:0;height:52px;min-height:52px;margin:0!important;padding:0 20px!important;border-radius:999px!important;font-size:15px!important;font-weight:700!important;line-height:1.2;white-space:nowrap;transition:background-color .15s ease-out,color .15s ease-out,border-color .15s ease-out}
.product-main form.cart .single_add_to_cart_button{border:1.5px solid var(--blue)!important;background:#fff!important;color:var(--blue)!important}
.product-main form.cart .single_add_to_cart_button:hover:not(:disabled){background:#edf5ff!important}
.product-main form.cart .product-buy{border:1.5px solid var(--blue)!important;background:var(--blue)!important;color:#fff!important}
.product-main form.cart .product-buy:hover:not(:disabled){border-color:var(--ink)!important;background:var(--ink)!important}
.product-main form.cart :is(.single_add_to_cart_button,.product-buy):focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.product-main form.cart .product-buy .ui-icon{width:18px;height:18px;color:currentColor}
@media(max-width:960px){.qn-cart{grid-template-columns:1fr}.qn-cart-summary{position:static}}
@media(max-width:640px){
  .qn-cart-line{grid-template-columns:72px minmax(0,1fr) auto;grid-template-areas:"thumb info remove" "thumb qty subtotal";gap:12px 14px}
  .qn-cart-thumb{grid-area:thumb;align-self:start}.qn-cart-thumb img{width:72px;height:72px}
  .qn-cart-info{grid-area:info}.qn-cart-qty{grid-area:qty}.qn-cart-subtotal{grid-area:subtotal;align-self:center}
  .qn-cart-line .product-remove{grid-area:remove;align-self:start}
  .qn-cart-actions{flex-direction:column}
  .product-main form.cart{grid-template-columns:auto minmax(0,1fr)}
  .product-main form.cart .product-buy{grid-column:1/-1}
}
@media(pointer:coarse){.qn-cart .qn-stepper button,.qn-cart .product-remove a.remove.qn-cart-trash{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.qn-cart :is(.qn-stepper button,.qn-cart-trash),.qn-cart-coupon summary::after,.product-main form.cart :is(.single_add_to_cart_button,.product-buy){transition:none}.qn-ship-quote.is-loading .qn-ship-quote-wait{animation:none}}
.qn-cart-summary .cart_totals table.shop_table tr td{background:none!important}
.qn-cart-summary .cart_totals tr.woocommerce-shipping-totals td{text-align:left!important}
.qn-cart-summary .cart_totals tr:not(.woocommerce-shipping-totals) td{text-align:right!important}
.qn-cart-page .woocommerce-message .button.wc-forward{display:none}
/* Checkout summary (review-order table moved into .checkout-summary): rows as a list, like the cart summary */
.checkout-summary table.woocommerce-checkout-review-order-table{display:block;width:100%;margin:0;border:0;border-radius:0;font-size:14px}
.checkout-summary table.woocommerce-checkout-review-order-table thead{display:none}
.checkout-summary table.woocommerce-checkout-review-order-table :is(tbody,tfoot){display:block}
.checkout-summary table.woocommerce-checkout-review-order-table tr{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;padding:12px 0;border-top:1px solid var(--line)}
.checkout-summary table.woocommerce-checkout-review-order-table tbody tr:first-child{border-top:0;padding-top:0}
.checkout-summary table.woocommerce-checkout-review-order-table :is(th,td){display:block;width:auto!important;padding:0!important;border:0!important;background:none!important;font-weight:400;text-align:left}
.checkout-summary table.woocommerce-checkout-review-order-table td.product-name{flex:1;min-width:0;color:var(--ink);line-height:1.45}
.checkout-summary table.woocommerce-checkout-review-order-table td.product-name .product-quantity{color:var(--muted);font-weight:400;white-space:nowrap}
.checkout-summary table.woocommerce-checkout-review-order-table :is(td.product-total,tfoot td){text-align:right;white-space:nowrap;color:var(--ink)}
.checkout-summary table.woocommerce-checkout-review-order-table tfoot th{color:var(--muted)}
.checkout-summary table.woocommerce-checkout-review-order-table tr.fee td{color:#14713b;font-weight:700}
.checkout-summary table.woocommerce-checkout-review-order-table tr.order-total th{color:var(--ink);font-size:15px;font-weight:700}
.checkout-summary table.woocommerce-checkout-review-order-table tr.order-total td{font-size:22px;font-weight:700;letter-spacing:-.02em}
.checkout-summary table.woocommerce-checkout-review-order-table tr.order-total td strong{font-weight:inherit}
/* Shipping rows (cart summary and checkout): heading on top, each option a selectable row */
:is(.checkout-summary,.qn-cart-summary) tr.woocommerce-shipping-totals{display:block!important}
:is(.checkout-summary,.qn-cart-summary) tr.woocommerce-shipping-totals th{display:block;margin:0 0 10px;color:var(--ink)!important;font-weight:700!important}
:is(.checkout-summary,.qn-cart-summary) tr.woocommerce-shipping-totals td{display:block;width:100%!important;text-align:left!important;white-space:normal!important}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods{display:grid;gap:8px;margin:0 0 12px;padding:0;list-style:none}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods li{position:relative;display:flex;align-items:center;gap:10px;margin:0!important;padding:10px 12px!important;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left;transition:border-color .15s ease-out,background-color .15s ease-out}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods li:hover{border-color:#b9c9de}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods li:has(input:checked){border-color:var(--blue);background:#f3f8ff}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods li:has(input[type=hidden]){padding-left:12px!important}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods input[type=radio]{flex:none;width:16px;height:16px;margin:0!important;accent-color:var(--blue)}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods label{flex:1;min-width:0;margin:0!important;font-size:14px;line-height:1.35;cursor:pointer}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods label::after{content:"";position:absolute;inset:0;border-radius:12px}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods input[type=radio]:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.qn-rate{display:flex;align-items:center;justify-content:space-between;gap:12px}
.qn-rate-name{display:flex;flex-direction:column;gap:2px;min-width:0;color:var(--ink);font-weight:700}
.qn-rate-name small{color:var(--muted);font-size:12px;font-weight:400}
.qn-rate-price{flex:none;color:var(--ink);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-destination{margin:0 0 12px;color:var(--muted);font-size:13px}
@media(prefers-reduced-motion:reduce){:is(.checkout-summary,.qn-cart-summary) .woocommerce-shipping-methods li{transition:none}}
/* Text pages (policies): reading width, clear hierarchy */
.qn-text-page{padding-top:clamp(32px,5vw,64px);padding-bottom:clamp(56px,7vw,96px);color:var(--ink)}
.qn-prose{max-width:72ch;margin:0 auto;font-size:16px;line-height:1.7}
.qn-prose h1{margin:0 0 24px;padding:0 0 24px;border-bottom:1px solid var(--line);font-size:clamp(32px,4vw,48px);font-weight:700;line-height:1.08;letter-spacing:-.03em;text-wrap:balance}
.qn-prose h2{margin:48px 0 12px;font-size:clamp(20px,2.2vw,24px);font-weight:700;line-height:1.25;letter-spacing:-.015em;text-wrap:balance}
.qn-prose h3{margin:32px 0 8px;font-size:17px;font-weight:700;line-height:1.35}
.qn-prose p{margin:0 0 16px;color:#33445f;text-wrap:pretty}
.qn-prose .qn-legal-lead{margin-bottom:24px;color:var(--ink);font-size:18px;line-height:1.6}
.qn-prose :is(ul,ol){margin:0 0 16px;padding-left:1.25em;color:#33445f}
.qn-prose li{margin:0 0 8px;padding-left:4px}
.qn-prose li::marker{color:var(--blue)}
.qn-prose strong{color:var(--ink)}
.qn-prose a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.qn-prose a:hover{color:var(--ink)}
.qn-prose .qn-legal-company{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.6}
@media(max-width:600px){.qn-prose{font-size:15px}.qn-prose .qn-legal-lead{font-size:17px}.qn-prose h2{margin-top:40px}}
/* Mobile header: favorites heart beside account and cart (was hidden); tighter spacing so the three fit */
@media(max-width:800px){.store-header .favorites-link{display:grid}}
@media(max-width:480px){
  .site-header.store-header{gap:4px;padding-inline:12px}
  .store-header .brand img{width:116px}
  .store-header .header-actions{gap:0}
  .store-header :is(.account-link,.favorites-link,.cart-link){min-width:40px;width:40px;height:40px}
  .store-header .header-actions .ui-icon{width:22px;height:22px}
}
@media(max-width:380px){
  .store-header .brand img{width:104px}
  .store-header :is(.account-link,.favorites-link,.cart-link){min-width:36px;width:36px;height:36px}
}

/* UX audit: drawer states and usable mobile targets. */
#qn-cart-summary>.pill-button{display:flex;width:100%;justify-content:center}
.cart-review-link{display:block;padding:12px;text-align:center;min-height:44px;text-decoration:underline}
.qn-review section{padding-block:16px;border-bottom:1px solid var(--line)}
.qn-checkout .qn-review section h3{font-size:16px;margin:0 0 8px}
.qn-review section p{overflow-wrap:anywhere;line-height:1.6;margin:0}
.qn-review-edit{min-height:44px;padding:8px 0;border:0;background:transparent;color:var(--blue);font:inherit;font-size:14px;text-decoration:underline;cursor:pointer}
.qn-fav .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart,.qn-fav .qn-fav-remove{width:44px!important;height:44px!important}
@media(max-width:480px){.store-header .brand img{width:100px}.store-header :is(.account-link,.favorites-link,.cart-link){width:44px;min-width:44px;height:44px}.store-header .header-actions{gap:0}.site-header.store-header{padding-inline:8px;gap:4px}}
/* Cart drawer a little narrower */
.cart-dialog{width:min(420px,100%)}
/* Price ladder: "De" (real sale only), "Por", Pix */
.card-prices:has(.card-price-now){flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:2px}
.card-prices .card-price-old,.card-prices .card-price-now{margin:0;color:var(--muted);font-size:13px;line-height:1.35;font-variant-numeric:tabular-nums}
.card-prices .card-price-old del{color:inherit}
.card-prices .card-price-now .woocommerce-Price-amount{color:var(--ink);font-weight:600}
.product-price-old{margin:0 0 2px;color:var(--muted);font-size:14px}
.product-price small{font-size:.8em;color:var(--muted)}
/* Reseller mode in the header */
.store-header .qn-reseller{display:inline-flex;align-items:center;gap:8px;height:40px;margin-right:8px;padding:0 16px 0 12px;border:0;border-radius:999px;background:#eef4fd;color:var(--ink);font-size:13px;font-weight:700;white-space:nowrap;text-decoration:none;transition:border-color .15s ease-out,background-color .15s ease-out}
.store-header .qn-reseller .ui-icon{width:18px;height:18px;color:var(--blue)}
.store-header .qn-reseller:hover{background:#e1ecfb}
.store-header .qn-reseller.is-active{background:var(--ink);color:#fff}
.store-header .qn-reseller.is-active .ui-icon{color:#7cc4ff}
.store-header .qn-reseller.is-active:hover{background:#13284a}
.store-header .qn-reseller.is-pending{background:#f2f4f7;color:var(--muted)}
.store-header .qn-reseller:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.qn-reseller-strip{display:none}
@media(max-width:1100px){.store-header .qn-reseller span{display:none}.store-header .qn-reseller{width:40px;padding:0;justify-content:center;margin-right:4px}}
@media(max-width:800px){
  .store-header .qn-reseller{display:none}
  .site-header.store-header:has(.qn-reseller-strip){height:auto}
  .qn-reseller-strip{grid-column:1/-1;grid-row:3;display:flex;align-items:center;gap:8px;margin:2px 0 0;padding:8px 14px;border-radius:10px;background:var(--ink);color:#fff;font-size:12px;text-decoration:none}
  .qn-reseller-strip .ui-icon{width:16px;height:16px;color:#7cc4ff}
  .qn-reseller-strip span{margin-left:auto;color:#b9c7dc}
}
/* Same-notebook parts on the product page */
.qn-compatible-lead{max-width:60ch;margin:-8px 0 24px;color:var(--muted);font-size:15px;line-height:1.55}
/* Login before checkout */
.qn-checkout-gate{display:flex;align-items:flex-start;gap:12px;max-width:960px;margin:0 auto 24px;padding:16px 20px;border-radius:12px;background:#f3f8ff;color:var(--ink)}
.qn-checkout-gate .ui-icon{flex:none;width:20px;height:20px;margin-top:2px;color:var(--blue)}
.qn-checkout-gate strong{display:block;font-size:15px}
.qn-checkout-gate span{display:block;margin-top:2px;color:var(--muted);font-size:14px}
/* Product page buy bar */
.qn-sticky-buy{position:fixed;inset:auto 0 0;z-index:40;border-top:1px solid var(--line);background:#fffffff2;box-shadow:0 -6px 24px #061a3914;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(110%);transition:transform .25s cubic-bezier(.22,1,.36,1);padding-bottom:env(safe-area-inset-bottom)}
.qn-sticky-buy[hidden]{display:block!important;visibility:hidden}
.qn-sticky-buy.is-visible{transform:none;visibility:visible}
.qn-sticky-buy-inner{display:flex;align-items:center;gap:24px;min-height:76px;padding-block:12px}
.qn-sticky-buy-product{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
.qn-sticky-buy-product img{flex:none;width:48px;height:48px;padding:3px;border-radius:8px;background:#f6f7f9;object-fit:contain;mix-blend-mode:multiply}
.qn-sticky-buy-product strong{overflow:hidden;font-size:14px;font-weight:700;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.qn-sticky-buy-price{display:flex;flex-direction:column;align-items:flex-end;flex:none;font-variant-numeric:tabular-nums}
.qn-sticky-buy-price span{color:var(--muted);font-size:12px}
.qn-sticky-buy-price strong{color:var(--blue);font-size:20px;font-weight:700;letter-spacing:-.02em;white-space:nowrap}
.qn-sticky-buy-price small{color:var(--muted);font-size:12px;font-weight:400;letter-spacing:0}
.qn-sticky-buy-actions{display:flex;gap:8px;flex:none}
.qn-sticky-buy-actions :is(button,a){display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 20px;border-radius:999px;font:inherit;font-size:14px;font-weight:700;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background-color .15s ease-out,border-color .15s ease-out}
.qn-sticky-buy-actions .ui-icon{width:18px;height:18px;color:currentColor}
.qn-sticky-add{border:1.5px solid var(--blue);background:#fff;color:var(--blue)}
.qn-sticky-add:hover{background:#edf5ff}
.qn-sticky-now{border:1.5px solid var(--blue);background:var(--blue);color:#fff}
.qn-sticky-now:hover{border-color:var(--ink);background:var(--ink)}
.qn-sticky-buy-actions :is(button,a):focus-visible{outline:2px solid var(--blue);outline-offset:2px}
body.has-sticky-buy{padding-bottom:84px}
@media(max-width:800px){
  .qn-sticky-buy-product{display:none}
  .qn-sticky-buy-inner{gap:12px;min-height:68px;padding-block:10px}
  .qn-sticky-buy-price{align-items:flex-start;flex:1}
  .qn-sticky-buy-price strong{font-size:18px}
  .qn-sticky-buy-actions :is(button,a){height:46px;padding:0 16px}
  .qn-sticky-add span{display:none}.qn-sticky-add{width:46px;padding:0!important}
}
@media(prefers-reduced-motion:reduce){.qn-sticky-buy{transition:none}}
.qn-sticky-buy-price :is(strong,span) .woocommerce-Price-amount{font-size:inherit;font-weight:inherit;color:inherit}
/* Reseller pill over the home hero (transparent header): white like the other header icons */
.home-page .store-header:not(.is-scrolled):not(:hover):not(:focus-within) .qn-reseller:not(.is-active){background:#ffffff26;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.home-page .store-header:not(.is-scrolled):not(:hover):not(:focus-within) .qn-reseller:not(.is-active) .ui-icon{color:#fff}
/* Header action links are round icons (border-radius:50%); the reseller pill keeps a pill shape */
.store-header .header-actions .qn-reseller{border-radius:999px}
/* Reseller application page (Quantum B2B form inside the theme) */
.qn-b2b-page{padding-top:clamp(32px,5vw,64px);padding-bottom:clamp(56px,7vw,96px);color:var(--ink)}
.qn-b2b-page .qb-page{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(32px,6vw,88px);max-width:none;margin:0;padding:0;color:var(--ink)}
.qn-b2b-page .qb-intro{position:sticky;top:132px}
.qn-b2b-page .qb-intro h1{margin:0 0 16px;font-size:clamp(34px,4.2vw,56px);font-weight:700;line-height:1.04;letter-spacing:-.035em;text-wrap:balance}
.qn-b2b-page .qb-intro>p{max-width:46ch;margin:0;color:#33445f;font-size:17px;line-height:1.6}
.qn-b2b-steps{display:grid;gap:0;margin:32px 0 0;padding:0;list-style:none;counter-reset:qn-step}
.qn-b2b-steps li{position:relative;display:grid;gap:2px;padding:16px 0 16px 48px;border-top:1px solid var(--line);counter-increment:qn-step}
.qn-b2b-steps li::before{content:counter(qn-step);position:absolute;left:0;top:16px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eef4fd;color:var(--blue);font-size:14px;font-weight:700}
.qn-b2b-steps strong{font-size:15px;font-weight:700}
.qn-b2b-steps span{color:var(--muted);font-size:14px;line-height:1.5}
.qn-b2b-help{margin:24px 0 0;color:var(--muted);font-size:14px}
.qn-b2b-help a{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.qn-b2b-page .qb-panel{padding:clamp(24px,3vw,40px);border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 1px 2px #061a390a,0 12px 40px #061a390d}
.qn-b2b-page .qb-panel h2{margin:0 0 6px;font-size:22px;font-weight:700;letter-spacing:-.01em}
.qn-b2b-page .qb-panel>p{margin:0;color:var(--muted);font-size:14px}
.qn-b2b-page .qb-panel a:not(.button){color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.qn-b2b-page .qb-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;margin:28px 0 20px}
.qn-b2b-page .qb-fields label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:13px;font-weight:700;color:var(--ink)}
.qn-b2b-page .qb-fields input{height:48px;width:100%;min-width:0;padding:0 14px;border:1px solid #c9d4e3;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:15px;font-weight:400;transition:border-color .15s ease-out,box-shadow .15s ease-out}
.qn-b2b-page .qb-fields input:hover{border-color:#9fb2cc}
.qn-b2b-page .qb-fields input:focus,.qn-b2b-page .qb-fields input:focus-visible{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #0868f926}
.qn-b2b-page .qb-fields input[aria-invalid=true]{border:1.5px solid #a1271b;box-shadow:none}
.qn-b2b-page .qb-fields small{color:var(--muted);font-size:12px;font-weight:400}
.qn-b2b-page .qb-fields .qb-field-error{color:#a1271b;font-size:13px;font-weight:600}
.qn-b2b-page .qb-note{margin:0 0 20px;padding:12px 14px;border-radius:10px;background:#f6f8fb;color:var(--muted);font-size:13px;line-height:1.55}
.qn-b2b-page .qb-panel .button{display:inline-flex;align-items:center;justify-content:center;width:100%;height:52px;padding:0 24px;border:0;border-radius:999px;background:var(--blue);color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer;text-decoration:none;transition:background-color .15s ease-out}
.qn-b2b-page .qb-panel .button:hover{background:var(--ink)}
.qn-b2b-page .qb-panel .button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.qn-b2b-page :is(.qb-message,.qb-status){margin:0 0 20px;padding:14px 16px;border-radius:12px;background:#eef4fd;color:var(--ink);font-size:14px;line-height:1.55}
@media(max-width:900px){.qn-b2b-page .qb-page{grid-template-columns:1fr}.qn-b2b-page .qb-intro{position:static}}
@media(max-width:560px){.qn-b2b-page .qb-fields{grid-template-columns:1fr}.qn-b2b-steps{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.qn-b2b-page :is(.qb-fields input,.qb-panel .button){transition:none}}
.qn-b2b-page .qb-intro>p.qn-b2b-help{margin-top:24px;color:var(--muted);font-size:14px}
/* Category bar under the white header (inc/header-nav.php). Inside <header>, positioned below it:
   home shows it only while the header is white (hover, focus, scrolled); other pages keep it and reserve its height. */
.store-header .qn-subnav{position:absolute;left:0;right:0;top:100%;z-index:1;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;transition:opacity .2s ease-out,transform .2s ease-out,visibility .2s}
.store-header .qn-subnav ul{display:flex;justify-content:center;gap:clamp(24px,4vw,64px);margin:0;padding:0;list-style:none}
.store-header .qn-subnav a{position:relative;display:flex;align-items:center;height:44px;color:var(--ink);font-size:14px;font-weight:500;text-decoration:none;white-space:nowrap}
.store-header .qn-subnav a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:var(--blue);transform:scaleX(0);transition:transform .2s ease-out}
.store-header .qn-subnav a:hover{color:var(--blue)}
.store-header .qn-subnav a:hover::after,.store-header .qn-subnav a[aria-current=page]::after{transform:scaleX(1)}
.store-header .qn-subnav a[aria-current=page]{color:var(--blue);font-weight:700}
.store-header .qn-subnav a:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}
.home-page .store-header:not(.is-scrolled):not(:hover):not(:focus-within) .qn-subnav{opacity:0;visibility:hidden;transform:translateY(-6px)}
body:not(.home-page) .elementor-widget-qn-header{padding-bottom:45px}
@media(max-width:800px){.store-header .qn-subnav{display:none}body:not(.home-page) .elementor-widget-qn-header{padding-bottom:0}}
@media(prefers-reduced-motion:reduce){.store-header .qn-subnav,.store-header .qn-subnav a::after{transition:none}}
.store-header:has(.store-category-menu[open]) .qn-subnav{opacity:0;visibility:hidden;transition:none}
/* Brand popover under each category of the bar (hover or keyboard focus); short delay before closing */
.store-header .qn-subnav li{position:relative}
.qn-subnav-pop{position:absolute;left:50%;top:100%;z-index:5;width:max-content;min-width:260px;max-width:min(560px,90vw);padding:18px 20px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 18px 48px #061a391f;opacity:0;visibility:hidden;transform:translate(-50%,6px);transition:opacity .15s ease-out .12s,transform .15s ease-out .12s,visibility 0s linear .27s}
.qn-subnav-pop::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
.store-header .qn-subnav li:is(:hover,:focus-within) .qn-subnav-pop{opacity:1;visibility:visible;transform:translate(-50%,0);transition-delay:.08s,.08s,0s}
.qn-subnav-pop p{margin:0 0 8px;padding:0 8px;color:var(--muted);font-size:12px;font-weight:600}
.store-header .qn-subnav .qn-subnav-pop ul{display:grid;grid-template-columns:repeat(var(--qn-cols,3),minmax(110px,max-content));justify-content:start;gap:2px 24px}
.store-header .qn-subnav .qn-subnav-pop a{display:flex;align-items:baseline;justify-content:space-between;gap:10px;height:auto;padding:7px 8px;border-radius:8px;color:var(--ink);font-size:14px;font-weight:500}
.store-header .qn-subnav .qn-subnav-pop a::after{display:none}
.store-header .qn-subnav .qn-subnav-pop a:hover{background:#f3f8ff;color:var(--blue)}
.qn-subnav-pop small{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.store-header .qn-subnav .qn-subnav-pop .qn-subnav-all{justify-content:flex-start;margin-top:10px;padding:10px 8px 2px;border-top:1px solid var(--line);border-radius:0;color:var(--blue);font-weight:700}
.store-header .qn-subnav .qn-subnav-pop .qn-subnav-all:hover{background:none;text-decoration:underline;text-underline-offset:3px}
@media(prefers-reduced-motion:reduce){.qn-subnav-pop{transition:none!important;transform:translate(-50%,0)}}
/* Cart drawer, list layout: bordered item list, one-line names, grey quantity box, Pix total box */
.cart-dialog h2#cart-title{display:flex;align-items:baseline;gap:8px;margin:0 0 20px;font-size:28px;font-weight:700;letter-spacing:-.02em}
.cart-dialog #qn-cart-count-label{color:var(--muted);font-size:14px;font-weight:400;letter-spacing:0}
.cart-dialog .cart-item{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;margin:0;padding:16px;border:1px solid var(--line);border-top:0}
.cart-dialog .cart-item:first-child{border-top:1px solid var(--line);border-radius:12px 12px 0 0}
.cart-dialog .cart-item:last-child{border-radius:0 0 12px 12px}
.cart-dialog .cart-item:only-child{border-radius:12px}
.cart-dialog .cart-item span{display:inline;margin:0;font-size:inherit}
.cart-dialog .cart-item-media{display:block;align-self:start}
.cart-dialog .cart-item-media img{display:block;width:88px;height:88px;padding:0;border-radius:8px;background:none;object-fit:contain}
.cart-dialog .cart-item-body{display:flex;flex-direction:column;min-width:0}
.cart-dialog .cart-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.cart-dialog .cart-item-title{overflow:hidden;min-width:0;color:var(--ink);font-size:15px;font-weight:700;line-height:1.35;white-space:nowrap;text-overflow:ellipsis}
.cart-dialog .cart-item-title:hover{color:var(--blue)}
.cart-dialog .cart-item-sku{margin:4px 0 0;color:var(--muted);font-size:13px}
.cart-dialog .cart-item-head .cart-remove{display:grid;place-items:center;flex:none;width:32px;height:32px;margin:-4px -6px 0 0;border-radius:8px;color:#8a96a8;transition:color .15s ease-out,background-color .15s ease-out}
.cart-dialog .cart-item-head .cart-remove:hover{background:#fde8e6;color:#a1271b}
.cart-dialog .cart-item-head .cart-remove .ui-icon{width:20px;height:20px;color:currentColor}
.cart-dialog .cart-item-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:14px}
.cart-dialog .cart-item-foot .qn-stepper{display:inline-flex;align-items:center;height:44px;border:1px solid #e3e7ee;border-radius:8px;background:#f2f4f7}
.cart-dialog .cart-item-foot .qn-stepper button{width:40px!important;height:42px!important;border-radius:8px!important}
.cart-dialog .cart-item-foot .qn-stepper button:hover:not(:disabled){background:#e6eaf0!important}
.cart-dialog .cart-item-foot .qn-stepper output{min-width:28px;font-size:16px;font-weight:700}
.cart-dialog .cart-item-prices{display:flex;flex-direction:column;align-items:flex-end;text-align:right;font-variant-numeric:tabular-nums}
.cart-dialog .cart-item-prices strong{color:var(--ink);font-size:17px;font-weight:700;white-space:nowrap}
.cart-dialog .cart-item-prices small{color:var(--muted);font-size:12px;white-space:nowrap}
/* Total box and actions */
.cart-dialog .cart-total-box{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0 16px;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:#fff}
.cart-dialog .cart-total-label{color:var(--muted);font-size:15px}
.cart-dialog .cart-total-values{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;font-variant-numeric:tabular-nums}
.cart-dialog .cart-total-values p{display:flex;align-items:center;gap:10px;margin:0}
.cart-dialog .cart-pix-badge{padding:4px 8px;border-radius:6px;background:#e3f6ea;color:#14713b;font-size:12px;font-weight:700;white-space:nowrap}
.cart-dialog .cart-total-values strong{color:var(--ink);font-size:22px;font-weight:700;letter-spacing:-.02em;white-space:nowrap}
.cart-dialog .cart-total-values small{color:var(--muted);font-size:12px}
.cart-dialog #qn-cart-summary #checkout-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;border-radius:10px;background:var(--blue);color:#fff;font-size:17px;font-weight:700}
.cart-dialog #qn-cart-summary #checkout-button:hover{background:var(--ink)}
.cart-dialog #qn-cart-summary .cart-review-link{display:block;margin-top:12px;color:var(--ink);font-size:14px;font-weight:600;text-align:center;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#bfccd9}
.cart-dialog .cart-continue{display:none}
@media(max-width:420px){.cart-dialog .cart-item{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:14px 12px}.cart-dialog .cart-item-media img{width:72px;height:72px}.cart-dialog .cart-total-box{padding:16px}}
/* Sale badges: card corner (replaces "% no Pix" while on sale) and next to "De" on the product page */
.card-badge.card-badge--sale{background:#14713b;color:#fff;font-variant-numeric:tabular-nums}
.product-price-old{display:flex;align-items:center;gap:8px}
.product-price-old .sale-badge{padding:2px 8px;border-radius:6px;background:#14713b;color:#fff;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
/* "% OFF" on line thumbnails (drawer, cart page, checkout) and the order savings strip */
.cart-dialog .cart-item-media,.qn-cart-thumb,.qn-cart-thumb a,.qn-thumb{position:relative;display:block}
.qn-thumb-badge{position:absolute;top:4px;left:4px;padding:2px 5px;border-radius:5px;background:#14713b;color:#fff;font-size:10px;font-weight:700;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums;pointer-events:none}
.qn-review-item{display:flex;align-items:center;gap:12px}
.qn-thumb{flex:none;width:60px;height:60px;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}
.qn-thumb img{display:block;width:100%;height:100%;padding:4px;object-fit:contain}
.qn-thumb .qn-thumb-badge{top:3px;left:3px;padding:1px 4px;font-size:9px}
.qn-review-name{min-width:0}
.qn-savings{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#e8f5ec;color:#14713b;font-size:14px;line-height:1.4}
.qn-savings-badge{padding:2px 8px;border-radius:6px;background:#14713b;color:#fff;font-size:12px;font-weight:700;white-space:nowrap}
.qn-savings-text strong{font-weight:700;white-space:nowrap}
.qn-savings-text strong .woocommerce-Price-amount{color:inherit}
.checkout-summary table.woocommerce-checkout-review-order-table tr.qn-savings-row{display:block;padding:0 0 12px;border-top:0}
.checkout-summary table.woocommerce-checkout-review-order-table tr.qn-savings-row td{display:block;width:100%!important}
.checkout-summary table.woocommerce-checkout-review-order-table tr.qn-savings-row .qn-savings{margin:0}
.qn-cart .qn-savings{margin-top:16px}
.cart-dialog #qn-cart-summary .qn-savings{margin:16px 0 0}
:is(.cart-dialog .cart-item,.qn-cart,.checkout-summary) .qn-thumb-badge{position:absolute;display:block;top:4px;left:4px;margin:0;padding:2px 5px;font-size:10px;line-height:1.3}
.checkout-summary .qn-thumb .qn-thumb-badge{top:3px;left:3px;padding:1px 4px;font-size:9px}
.checkout-summary table.woocommerce-checkout-review-order-table td.product-name .product-quantity{display:block;margin:4px 0 0 72px;color:var(--muted)!important;font-size:13px;font-weight:600}
/* Home, desktop, transparent header: the search rests as a round magnifier and grows when the header turns white
   (hover, focus, scroll). Clicking the magnifier opens it (interface.js), so it never depends on hover alone. */
@media(min-width:801px){
  .store-header .header-search{transition:max-width .35s cubic-bezier(.22,1,.36,1),background-color .2s ease,border-color .2s ease}
  .home-page .store-header:not(.is-scrolled):not(:hover):not(:focus-within) .header-search{max-width:50px;border-color:transparent;background:transparent;cursor:pointer}
  .home-page .store-header:not(.is-scrolled):not(:hover):not(:focus-within) .header-search .dgwt-wcas-sf-wrapp{overflow:hidden}
  .home-page .store-header:not(.is-scrolled):not(:hover):not(:focus-within) .header-search .dgwt-wcas-search-input{opacity:0;pointer-events:none}
  .home-page .store-header:not(.is-scrolled):not(:hover):not(:focus-within) .header-search .dgwt-wcas-search-submit{width:48px!important}
  .home-page .store-header .header-search .dgwt-wcas-search-input{transition:opacity .2s ease .1s}
}
@media(min-width:801px) and (prefers-reduced-motion:reduce){.store-header .header-search,.home-page .store-header .header-search .dgwt-wcas-search-input{transition:none}}
/* "Para o mesmo notebook" strip above the product: slim row, photo + name + Pix price, sideways scroll */
.qn-compat-strip{border-bottom:1px solid var(--line);background:#fff}
.qn-compat-strip-inner{position:relative;display:flex;align-items:center;gap:24px;padding-block:12px}
.qn-compat-strip-title{display:flex;flex-direction:column;flex:none;max-width:150px;margin:0;padding-right:24px;border-right:1px solid var(--line);font-size:12px;line-height:1.35}
.qn-compat-strip-title span{color:var(--muted)}
.qn-compat-strip-title strong{color:var(--ink);font-size:13px;font-weight:700}
.qn-compat-strip-rail{position:relative;flex:1;min-width:0}
.qn-compat-strip-track{display:flex;gap:8px;min-width:0;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none}
.qn-compat-strip-track::-webkit-scrollbar{display:none}
.qn-compat-item{display:flex;align-items:center;gap:12px;flex:0 0 260px;padding:6px 12px 6px 6px;border-radius:10px;color:var(--ink);text-decoration:none;scroll-snap-align:start;transition:background-color .15s ease-out}
.qn-compat-item:hover{background:#f3f6fa}
.qn-compat-item:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}
.qn-compat-item img{flex:none;width:64px;height:64px;padding:4px;border-radius:8px;background:#f6f7f9;object-fit:contain;mix-blend-mode:multiply}
.qn-compat-item-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.qn-compat-item-name{overflow:hidden;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.qn-compat-item:hover .qn-compat-item-name{color:var(--blue)}
.qn-compat-item-price{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.qn-compat-item-price .woocommerce-Price-amount{color:var(--ink);font-weight:700}
.qn-compat-arrow{position:absolute;top:50%;display:grid;place-items:center;width:36px;height:36px;margin-top:-18px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);box-shadow:0 2px 10px #061a391a;cursor:pointer}
.qn-compat-arrow[hidden]{display:none}
.qn-compat-arrow .ui-icon{width:18px;height:18px;color:currentColor}
.qn-compat-arrow.is-next{right:-6px}
.qn-compat-arrow.is-prev{left:-6px}
.qn-compat-arrow.is-prev .ui-icon{transform:rotate(180deg)}
.qn-compat-arrow:hover{border-color:var(--ink)}
@media(max-width:800px){.qn-compat-strip-title{display:none}.qn-compat-item{flex-basis:230px}.qn-compat-item img{width:52px;height:52px}.qn-compat-arrow{display:none!important}.qn-compat-strip-inner{gap:0;padding-block:8px}}
@media(prefers-reduced-motion:reduce){.qn-compat-strip-track{scroll-behavior:auto}}
/* Three-step checkout (Identificação → Entrega → Pagamento) + summary */
.qn-checkout:has(.qn-steps-checkout){max-width:1440px}
.qn-checkout:has(.qn-steps-checkout) .checkout-intro{margin-bottom:24px}
.qn-checkout:has(.qn-steps-checkout) .checkout-intro h1{font-size:clamp(26px,2.6vw,34px)}
.qn-steps-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px}
.qn-checkout #customer_details.qn-steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px}
.qn-step{min-width:0;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff;transition:border-color .2s ease-out,box-shadow .2s ease-out}
.qn-step[data-state=active]{border-color:#9cc1f7;box-shadow:0 8px 28px #061a3912}
.qn-step[data-state=locked]{background:#f8fafc}
.qn-step[data-state=locked] .qn-step-head{opacity:.55}
.qn-step-head{display:flex;align-items:center;gap:10px;margin:0 0 4px}
.qn-step-head h2{margin:0;font-size:18px;font-weight:700;letter-spacing:-.01em}
.qn-step-number{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:#e6ebf2;color:var(--ink);font-size:13px;font-weight:700}
.qn-step[data-state=active] .qn-step-number{background:var(--blue);color:#fff}
.qn-step[data-state=done] .qn-step-number{background:#14713b;color:#fff;font-size:0}
.qn-step[data-state=done] .qn-step-number::before{content:"";width:14px;height:14px;background:#fff;-webkit-mask:url("./assets/icons/lucide/check.svg") center/contain no-repeat;mask:url("./assets/icons/lucide/check.svg") center/contain no-repeat}
.qn-step-edit{margin-left:auto;padding:4px 0;border:0;background:none;color:var(--blue);font:inherit;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.qn-step-edit:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}
.qn-step-lead{margin:0 0 16px 38px;color:var(--muted);font-size:13px;line-height:1.5}
.qn-step-locked{margin:8px 0 0 38px;color:var(--muted);font-size:14px}
.qn-step-summary{margin:10px 0 0 38px}
.qn-step-summary p{margin:0 0 3px;color:#33445f;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.qn-step-summary p:first-child{color:var(--ink);font-weight:700}
/* Fields: two-column grid inside a step where pairs make sense */
.qn-step .woocommerce-billing-fields h3{display:none}
.qn-step .woocommerce-billing-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.qn-step .form-row{grid-column:1/-1;float:none!important;width:auto!important;margin:0 0 14px!important;padding:0!important}
.qn-step .form-row-first,.qn-step #billing_number_field,.qn-step #billing_city_field{grid-column:1}
.qn-step .form-row-last,.qn-step #billing_address_2_field,.qn-step #billing_state_field{grid-column:2}
.qn-step #billing_country_field{display:none!important}
.qn-step .form-row label{display:block;margin:0 0 6px;color:var(--ink);font-size:13px;font-weight:700;line-height:1.3}
.qn-step .form-row label .optional{color:var(--muted);font-weight:400}
.qn-step .form-row label .required{color:#a1271b;text-decoration:none}
.qn-step .form-row :is(input.input-text,select,textarea){width:100%;height:46px;padding:0 12px;border:1px solid #c9d4e3;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:15px}
.qn-step .form-row textarea{height:84px;padding:10px 12px}
.qn-step .form-row :is(input.input-text,select,textarea):focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #0868f926}
.qn-step .form-row.woocommerce-invalid :is(input.input-text,select){border-color:#a1271b}
.qn-step .select2-container .select2-selection--single{height:46px;border:1px solid #c9d4e3;border-radius:10px}
.qn-step .select2-container .select2-selection--single .select2-selection__rendered{padding:0 32px 0 12px;line-height:44px;color:var(--ink)}
.qn-step .select2-container .select2-selection--single .select2-selection__arrow{height:44px}
.qn-step #billing_postcode_field.is-loading::after{content:"Buscando endereço…";display:block;margin-top:6px;color:var(--muted);font-size:12px}
.qn-step-next{display:flex;align-items:center;justify-content:center;width:100%;height:50px;margin-top:6px;border:0;border-radius:12px;background:var(--blue);color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .15s ease-out}
.qn-step-next:hover{background:var(--ink)}
.qn-step-next:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
/* Shipping options inside "Entrega" */
.qn-shipping-options{margin:4px 0 16px}
.qn-shipping-title{margin:0 0 8px;color:var(--ink);font-size:13px;font-weight:700}
.qn-shipping-hint{margin:0;padding:10px 12px;border-radius:10px;background:#f6f8fb;color:var(--muted);font-size:13px;line-height:1.45}
.qn-shipping-hint.is-error{margin-bottom:8px;background:#fde8e6;color:#a1271b}
.qn-shipping-options .woocommerce-shipping-methods{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.qn-shipping-options .woocommerce-shipping-methods li{position:relative;display:flex;align-items:center;gap:10px;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;transition:border-color .15s ease-out,background-color .15s ease-out}
.qn-shipping-options .woocommerce-shipping-methods li:hover{border-color:#b9c9de}
.qn-shipping-options .woocommerce-shipping-methods li:has(input:checked){border-color:var(--blue);background:#f3f8ff}
.qn-shipping-options .woocommerce-shipping-methods input[type=radio]{flex:none;width:16px;height:16px;margin:0;accent-color:var(--blue)}
.qn-shipping-options .woocommerce-shipping-methods label{flex:1;min-width:0;margin:0;font-size:14px;line-height:1.35;cursor:pointer}
.qn-shipping-options .woocommerce-shipping-methods label::after{content:"";position:absolute;inset:0;border-radius:12px}
.qn-order-notes{margin:0 0 14px}
.qn-order-notes summary{color:var(--blue);font-size:14px;font-weight:700;cursor:pointer}
.qn-order-notes .form-row{margin-top:10px!important}
/* Payment step */
.qn-step #payment{padding:0;border-radius:0;background:none}
.qn-step #payment ul.payment_methods{display:grid;gap:8px;margin:0 0 16px;padding:0;border:0;list-style:none}
.qn-step #payment ul.payment_methods li{margin:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;line-height:1.4}
.qn-step #payment ul.payment_methods li:has(input:checked){border-color:var(--blue);background:#f3f8ff}
.qn-step #payment ul.payment_methods li.woocommerce-notice,.qn-step #payment ul.payment_methods li .woocommerce-info{border:0;padding:12px;background:#f6f8fb;color:var(--muted);font-size:14px}
.qn-step #payment div.payment_box{margin:10px 0 0;padding:12px;border-radius:10px;background:#f6f8fb;font-size:14px}
.qn-step #payment div.payment_box::before{display:none}
.qn-step #payment .place-order{margin:0;padding:0}
.qn-step #payment #place_order{float:none;width:100%;height:54px;border:0;border-radius:12px;background:#14713b;color:#fff;font-size:17px;font-weight:700}
.qn-step #payment #place_order:hover{background:#0f5a2f}
.qn-step .woocommerce-privacy-policy-text p{margin:0 0 12px;color:var(--muted);font-size:12px;line-height:1.5}
/* Summary column */
.qn-steps-summary.checkout-summary{position:sticky;top:120px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}
.qn-steps-summary h2{margin:0 0 14px;font-size:18px;font-weight:700}
.qn-summary-toggle{display:none}
.qn-steps-summary .qn-shipping-total td{text-align:right}
.qn-shipping-chosen{display:block;color:var(--muted);font-size:12px;font-weight:400}
.qn-shipping-chosen.is-empty{display:inline;font-size:13px}
@media(max-width:1179px){
  .qn-steps-layout{grid-template-columns:1fr}
  .qn-checkout #customer_details.qn-steps-grid{grid-template-columns:1fr}
  .qn-steps-summary.checkout-summary{position:static;order:-1;padding:0;overflow:hidden}
  .qn-summary-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:14px 16px;border:0;background:#fff;color:var(--ink);font:inherit;font-size:15px;font-weight:700;cursor:pointer}
  .qn-summary-toggle strong{margin-left:auto;font-size:16px}
  .qn-summary-toggle .ui-icon{width:18px;height:18px;transition:transform .2s ease-out}
  .qn-summary-toggle[aria-expanded=true] .ui-icon{transform:rotate(180deg)}
  .qn-summary-body{display:none;padding:0 16px 16px;border-top:1px solid var(--line)}
  .qn-summary-body.is-open{display:block}
  .qn-steps-summary h2{display:none}
  .qn-step-lead,.qn-step-locked,.qn-step-summary{margin-left:0}
}
@media(max-width:420px){.qn-step{padding:16px}.qn-step .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}.qn-step :is(.form-row-first,.form-row-last,#billing_number_field,#billing_address_2_field,#billing_city_field,#billing_state_field){grid-column:1}}
@media(prefers-reduced-motion:reduce){.qn-step,.qn-step-next,.qn-summary-toggle .ui-icon{transition:none}}
/* Checkout polish (Yampi-like): no page title, compact header with "Ambiente seguro", tidy summary lines */
.qn-checkout:has(.qn-steps-checkout) .checkout-intro{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.checkout-page .qn-checkout:has(.qn-steps-checkout){padding-top:28px}
.checkout-header{display:flex;align-items:center;gap:24px}
.checkout-header .checkout-return{margin-left:auto}
.checkout-secure{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:#e8f5ec;color:#14713b;font-size:13px;font-weight:700;white-space:nowrap}
.checkout-secure .ui-icon{width:15px;height:15px;color:currentColor}
@media(max-width:600px){.checkout-header .checkout-return{display:none}.checkout-secure{margin-left:auto}}
/* Summary lines: thumbnail | name (2 lines) + quantity | price */
.qn-steps-summary table.woocommerce-checkout-review-order-table tbody tr.cart_item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px 12px}
.qn-steps-summary table.woocommerce-checkout-review-order-table td.product-name{display:grid!important;grid-template-columns:56px minmax(0,1fr);column-gap:12px;align-items:start;font-size:13px}
.qn-steps-summary td.product-name .qn-review-item{display:contents}
.qn-steps-summary td.product-name .qn-thumb{grid-row:1/span 2;width:56px;height:56px}
.qn-steps-summary td.product-name .qn-review-name{overflow:hidden;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.qn-steps-summary table.woocommerce-checkout-review-order-table td.product-name .product-quantity{grid-column:2;margin:2px 0 0!important;font-size:12px}
.qn-steps-summary table.woocommerce-checkout-review-order-table td.product-total{font-size:14px;font-weight:700}
.qn-steps-summary table.woocommerce-checkout-review-order-table tr.qn-pix-total{display:block;padding:0 0 12px;border-top:0}
.qn-steps-summary table.woocommerce-checkout-review-order-table tr.qn-pix-total td{display:flex!important;align-items:center;justify-content:flex-end;gap:8px;width:100%!important;color:#14713b!important;font-size:15px;font-weight:700}
/* Payment step: a single, clean notice when no method is available */
.qn-step #payment ul.payment_methods:has(> li.woocommerce-notice){display:block}
.qn-step #payment ul.payment_methods > li.woocommerce-notice{padding:0;border:0;background:none}
.qn-step #payment .woocommerce-info,.qn-step #payment .woocommerce-notice--info{margin:0;padding:14px 16px;border:0;border-radius:12px;background:#fff7e6;color:#6b4a00;font-size:14px;line-height:1.5}
.qn-step #payment .woocommerce-info::before,.qn-step #payment .woocommerce-notice::before{display:none}
.qn-step #payment #place_order:disabled,.qn-step #payment ul.payment_methods:has(> li.woocommerce-notice) ~ .place-order #place_order{opacity:.5}
.qn-step #payment ul.payment_methods > li:has(> .woocommerce-info){padding:0;border:0;background:none}
.qn-step #payment ul.payment_methods > li > .woocommerce-info{margin:0;padding:14px 16px;border:0;border-radius:12px;background:#fff7e6;color:#6b4a00;font-size:14px;line-height:1.5}
.qn-step #payment ul.payment_methods > li > .woocommerce-info::before{display:none}
.qn-step #payment ul.payment_methods > li > .woocommerce-info a{color:inherit;font-weight:700;text-decoration:underline}
.collection-heading.is-bare{justify-content:flex-end}
/* Compact "Para o mesmo notebook" strip: lower row, one-line names, "+" adds to the cart */
.qn-compat-strip-inner{gap:16px;padding-block:6px}
.qn-compat-strip-title{max-width:130px;padding-right:16px;font-size:11px;line-height:1.3}
.qn-compat-strip-title strong{font-size:12px}
.qn-compat-strip-track{gap:4px}
.qn-compat-item{position:relative;display:flex;align-items:center;gap:6px;flex:0 0 250px;padding:0;border-radius:10px;scroll-snap-align:start;transition:background-color .15s ease-out}
.qn-compat-item:hover{background:#f3f6fa}
.qn-compat-item-link{display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:4px 4px 4px 4px;border-radius:10px;color:var(--ink);text-decoration:none}
.qn-compat-item-link:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}
.qn-compat-item-link img{flex:none;width:44px;height:44px;padding:3px;border-radius:8px;background:#f6f7f9;object-fit:contain;mix-blend-mode:multiply}
.qn-compat-item .qn-compat-item-text{gap:1px}
.qn-compat-item .qn-compat-item-name{display:block;overflow:hidden;font-size:12px;line-height:1.3;white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:unset}
.qn-compat-item:hover .qn-compat-item-name{color:var(--blue)}
.qn-compat-item .qn-compat-item-price{font-size:11px}
.qn-compat-add{display:grid;place-items:center;flex:none;width:32px;height:32px;margin-right:6px;border:1px solid var(--blue);border-radius:50%;background:#fff;color:var(--blue);text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out}
.qn-compat-add:hover{background:var(--blue);color:#fff}
.qn-compat-add:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.qn-compat-add .ui-icon{width:16px;height:16px;color:currentColor}
.qn-compat-add.loading{opacity:.5;pointer-events:none}
.qn-compat-add.added{background:#14713b;border-color:#14713b;color:#fff}
.qn-compat-strip .added_to_cart{display:none}
.qn-compat-arrow{width:30px;height:30px;margin-top:-15px}
@media(max-width:800px){.qn-compat-item{flex-basis:220px}.qn-compat-strip-inner{padding-block:4px}}
/* Shipping tags: "Mais barato" / "Mais rápido" */
.qn-rate-tag{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:5px;background:#e8f5ec;color:#14713b;font-size:11px;font-style:normal;font-weight:700;vertical-align:1px;white-space:nowrap}
.qn-compat-strip-track .qn-compat-item{min-width:0;width:250px;max-width:250px}@media(max-width:800px){.qn-compat-strip-track .qn-compat-item{width:220px;max-width:220px}}
/* Adaptive grids: columns follow the available width instead of fixed breakpoints */
.category-results .product-grid:not(.is-list){grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}
@media(min-width:700px){.home-categories .category-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* Cart drawer: no sideways scroll (Windows' fixed scrollbars took width and overflowed the lines) and a denser
   layout so at least three lines show on a 768px-tall laptop screen before the list scrolls */
.cart-dialog #cart-items{overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;padding-right:0}
.cart-dialog{padding-top:24px!important;padding-bottom:20px!important}
.cart-dialog h2#cart-title{margin-bottom:14px;font-size:24px}
.cart-dialog .dialog-close{width:40px;height:40px}
.cart-dialog .cart-item{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:12px}
.cart-dialog .cart-item-media img{width:64px;height:64px}
.cart-dialog .cart-item-title{font-size:14px}
.cart-dialog .cart-item-sku{margin-top:2px;font-size:12px}
.cart-dialog .cart-item-foot{margin-top:8px}
.cart-dialog .cart-item-foot .qn-stepper{height:36px}
.cart-dialog .cart-item-foot .qn-stepper button{width:34px!important;height:34px!important}
.cart-dialog .cart-item-foot .qn-stepper output{min-width:24px;font-size:15px}
.cart-dialog .cart-item-prices strong{font-size:16px}
.cart-dialog .qn-thumb-badge{top:2px;left:2px;padding:1px 4px;font-size:9px}
.cart-dialog #qn-cart-summary .qn-savings{margin:12px 0 0;padding:8px 12px;font-size:13px}
.cart-dialog .cart-total-box{margin:10px 0 10px;padding:12px 16px}
.cart-dialog .cart-total-values strong{font-size:20px}
.cart-dialog #qn-cart-summary #checkout-button{min-height:50px;font-size:16px}
.cart-dialog #qn-cart-summary .cart-review-link{margin-top:8px;font-size:13px}
@media(max-width:420px){.cart-dialog .cart-item{grid-template-columns:56px minmax(0,1fr);gap:10px;padding:10px}.cart-dialog .cart-item-media img{width:56px;height:56px}}
/* Product page: wider purchase column and a lighter, smaller title (long part names stay on ~2 lines) */
@media(min-width:801px){.product-main .product-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}}
.product-main .product-purchase h1{font-size:clamp(22px,1.8vw,28px);font-weight:500;line-height:1.3;letter-spacing:-.015em;text-wrap:pretty}
/* Drawer thumbnails are 64px now: smaller sale badge */
.cart-dialog .cart-item .cart-item-media .qn-thumb-badge{top:2px;left:2px;padding:1px 4px;font-size:9px}
/* Slimmer header: less vertical padding, more of the page in view (home video offset follows) */
@media(min-width:801px){
  .site-header.store-header{height:76px}
  body.home-page .hero-shell{margin-top:-76px}
  .hero-video .video-overlay{padding-top:76px}
  .store-header :is(.account-link,.favorites-link,.cart-link){height:40px}
  .store-header .header-search{height:44px}
}
@media(max-width:800px){.site-header.store-header{height:118px;padding-top:8px;padding-bottom:8px;row-gap:6px}}
/* Product page: no category bar under the header (the "Para o mesmo notebook" strip takes that place) */
body.product-page .elementor-widget-qn-header{padding-bottom:0}
/* Product page: category bar hidden, shown over the strip while the header is hovered or focused (like the home) */
body.product-page .store-header .qn-subnav{opacity:0;visibility:hidden;transform:translateY(-6px)}
body.product-page .store-header:is(:hover,:focus-within) .qn-subnav{opacity:1;visibility:visible;transform:none}
/* Suggestion strip: each product in its own bordered box */
.qn-compat-strip-track{gap:8px}
.qn-compat-strip-track .qn-compat-item{border:1px solid var(--line);background:#fff}
.qn-compat-strip-track .qn-compat-item:hover{border-color:#b9c9de;background:#f8fafc}
/* Buy bar price: Pix first and larger, card price underneath */
.qn-sticky-buy-price strong{font-size:22px;line-height:1.15}
.qn-sticky-buy-price span{margin-top:2px;font-size:12px}
.qn-sticky-buy-price span .woocommerce-Price-amount{color:var(--ink);font-weight:600}
@media(max-width:800px){.qn-sticky-buy-price strong{font-size:20px}}
/* Product page: quantity and buy buttons live in the bottom bar only (the page form stays in the DOM, hidden,
   because the bar submits it) */
body.product-page .product-main form.cart{display:none!important}
.qn-sticky-qty{display:inline-flex;align-items:center;height:48px;border:1px solid var(--line);border-radius:999px;background:#fff}
.qn-sticky-qty button{display:grid;place-items:center;width:40px;height:46px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}
.qn-sticky-qty button:hover:not(:disabled){background:var(--pale)}
.qn-sticky-qty button:disabled{color:#b8c2d1;cursor:not-allowed}
.qn-sticky-qty .ui-icon{width:16px;height:16px;color:currentColor}
.qn-sticky-qty input{width:40px;height:44px;margin:0;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;font-size:16px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}
.qn-sticky-qty input::-webkit-inner-spin-button,.qn-sticky-qty input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
.qn-sticky-qty :is(button,input):focus-visible{outline:2px solid var(--blue);outline-offset:-2px;border-radius:8px}
.qn-sticky-buy-actions{align-items:center}
@media(max-width:800px){
  .qn-sticky-buy-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding-block:8px}
  .qn-sticky-buy-actions{display:contents}
  .qn-sticky-qty{grid-row:1;grid-column:2;height:40px}
  .qn-sticky-qty button{width:34px;height:38px}
  .qn-sticky-qty input{width:32px;height:38px}
  .qn-sticky-buy-price{grid-row:1;grid-column:1}
  .qn-sticky-buy-actions > :is(.qn-sticky-add,.qn-sticky-now){grid-row:2}
  .qn-sticky-buy-actions > .qn-sticky-add{grid-column:1;width:auto!important;justify-self:stretch}
  .qn-sticky-buy-actions > .qn-sticky-add span{display:inline}
  .qn-sticky-buy-actions > .qn-sticky-now{grid-column:2}
  .qn-sticky-buy-actions > a.qn-sticky-now:only-child{grid-column:1/-1}
  body.has-sticky-buy{padding-bottom:124px}
}
/* Solid buy bar: fixed elements with backdrop-filter can flicker or vanish while scrolling in iOS Safari */
.qn-sticky-buy{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;transform:none;visibility:visible}
/* Buy bar above floating widgets that plugins add (admin bars, chat bubbles); dialogs (cart, menu) still cover it */
.qn-sticky-buy{z-index:9990}
dialog[open]{z-index:9995}
/* Purchase reassurance list (warranty, returns, compatibility help) under the price */
.qn-benefits{display:grid;gap:0;margin:20px 0 4px;padding:0;border:1px solid var(--line);border-radius:14px;list-style:none;overflow:hidden}
.qn-benefits li{margin:0;border-top:1px solid var(--line)}
.qn-benefits li:first-child{border-top:0}
.qn-benefits :is(a,div){display:flex;align-items:center;gap:14px;padding:12px 16px;color:var(--ink);text-decoration:none}
.qn-benefits a:hover{background:#f8fafc}
.qn-benefits a:hover strong{color:var(--blue)}
.qn-benefits a:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}
.qn-benefit-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:10px;background:#eef4fd;color:var(--blue)}
.qn-benefit-icon .ui-icon{width:20px;height:20px;color:currentColor}
.qn-benefit-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.qn-benefit-text strong{font-size:14px;font-weight:700;line-height:1.3}
.qn-benefit-text span{color:var(--muted);font-size:13px;line-height:1.4}
/* "+ mais opções de pagamento" under the price */
.qn-payments{margin:10px 0 0}
.qn-payments summary{display:inline-flex;align-items:center;min-height:32px;color:var(--blue);font-size:14px;font-weight:700;cursor:pointer;list-style:none}
.qn-payments summary::-webkit-details-marker{display:none}
.qn-payments summary:hover{text-decoration:underline;text-underline-offset:3px}
.qn-payments summary:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}
.qn-payments .qn-payments-close,.qn-payments[open] .qn-payments-open{display:none}
.qn-payments[open] .qn-payments-close{display:inline}
.qn-payments-panel{margin-top:8px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff}
.qn-payments-title{margin:0 0 10px;color:var(--ink);font-size:14px;font-weight:700}
.qn-payments-panel .payment-brands li{border:1px solid var(--line);border-radius:6px;background:#fff}
.qn-payments-panel .payment-brands li:last-child{border-color:var(--line)}
.qn-payments-note{margin:10px 0 0;color:#14713b;font-size:13px;font-weight:600}
/* Benefits side by side on desktop: icon on top, text below, thin dividers */
@media(min-width:801px){
  .qn-benefits{grid-template-columns:repeat(3,minmax(0,1fr))}
  .qn-benefits li{border-top:0;border-left:1px solid var(--line)}
  .qn-benefits li:first-child{border-left:0}
  .qn-benefits :is(a,div){flex-direction:column;align-items:flex-start;gap:10px;height:100%;padding:14px}
  .qn-benefit-text strong{font-size:13px}
  .qn-benefit-text span{font-size:12px}
}
/* --- Round of fixes: softer focus, compact checkout, smaller page titles, tidy steppers --- */
/* Softer focus on text fields (was a strong blue border): light blue edge and a faint glow */
:is(.qn-step,.qn-cart,.qn-cart-page,.qn-ship-quote,.qn-ship-calc,.qn-b2b-page,.qn-auth,.qn-account,.qn-checkout,.qn-coupon) :is(input.input-text,input[type=email],input[type=tel],input[type=text],input[type=password],input[type=search],select,textarea):not(.qty):focus{border-color:#a9c3ea!important;box-shadow:0 0 0 3px rgba(8,104,249,.07)!important;outline:none!important}
:is(.qn-step,.qn-checkout) .select2-container--focus .select2-selection,.qn-step .select2-container--open .select2-selection{border-color:#a9c3ea!important;box-shadow:0 0 0 3px rgba(8,104,249,.07)!important}
/* Steppers (− n +): platform number-input styling removed so the three parts line up on iOS/Android */
:is(.qn-stepper,.qn-sticky-qty) input{-webkit-appearance:none;appearance:none;-moz-appearance:textfield;min-width:0;padding:0!important;border:0!important;border-radius:0;box-shadow:none!important;background:transparent;line-height:1;text-align:center}
:is(.qn-stepper,.qn-sticky-qty) button{flex:none;line-height:1}
:is(.qn-stepper,.qn-sticky-qty) .quantity{display:flex;align-items:center;margin:0}
/* Cart drawer close button: fixed round shape, no thick ring on open */
.cart-dialog .dialog-close{flex:none;display:grid;place-items:center;width:40px;min-width:40px;height:40px;aspect-ratio:1;padding:0;border-radius:50%}
.cart-dialog .dialog-close:focus{outline:none}
.cart-dialog .dialog-close:focus-visible{outline:2px solid #a9c3ea;outline-offset:2px}
/* Page titles (cart, favourites): smaller, less space */
.qn-page-title{margin-bottom:16px;padding-bottom:14px;font-size:clamp(24px,2.4vw,30px)}
.qn-cart-page{padding-top:clamp(16px,3vw,28px)}
.qn-favorites-head{margin-bottom:20px;padding-bottom:14px}
.qn-favorites-head h1{margin-bottom:4px;font-size:clamp(24px,2.4vw,30px)}
.qn-commerce:has(.qn-favorites){padding-top:clamp(16px,3vw,28px)}
/* Cart page on small screens: tighter lines and summary */
@media(max-width:640px){
  .qn-cart-line{grid-template-columns:60px minmax(0,1fr) auto;gap:10px 12px;padding:14px 0}
  .qn-cart-thumb img{width:60px;height:60px}
  .qn-cart-name{font-size:14px}
  .qn-cart-unit{font-size:12px}
  .qn-cart-subtotal{font-size:15px}
  .qn-cart .qn-stepper button{width:36px;height:36px}
  .qn-cart .qn-stepper input.qty{width:30px;height:36px}
  .qn-cart-summary .cart_totals{padding:16px}
  .qn-cart .qn-savings{font-size:13px}
}
/* Checkout summary: the product list scrolls inside after ~3 lines; totals stay in view */
.qn-steps-summary table.woocommerce-checkout-review-order-table tbody{max-height:250px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
/* Checkout steps fit a laptop screen: lower fields, pairs side by side, less spacing */
.qn-step{padding:16px 18px}
.qn-step-head{margin-bottom:2px}
.qn-step-lead{margin-bottom:12px;font-size:12px}
.qn-step .form-row{margin-bottom:10px!important}
.qn-step .form-row label{margin-bottom:4px;font-size:12px}
.qn-step .form-row :is(input.input-text,select){height:42px;font-size:14px}
.qn-step .select2-container .select2-selection--single{height:42px}
.qn-step .select2-container .select2-selection--single .select2-selection__rendered{line-height:40px}
.qn-step .select2-container .select2-selection--single .select2-selection__arrow{height:40px}
.qn-step #billing_persontype_field{grid-column:1}
.qn-step :is(#billing_cpf_field,#billing_cnpj_field){grid-column:2}
.qn-step-next{height:46px;margin-top:2px}
.qn-shipping-options{margin-bottom:12px}
.qn-shipping-options .woocommerce-shipping-methods li{padding:8px 12px}
@media(max-width:420px){.qn-step :is(#billing_persontype_field,#billing_cpf_field,#billing_cnpj_field){grid-column:1}}
.qn-sticky-add.is-loading{opacity:.6;pointer-events:none}
/* Checkout fields: lower height must beat the older ".qn-checkout .woocommerce form .form-row" 48px rule */
.qn-checkout .woocommerce form .qn-step .form-row :is(.input-text,select){height:42px;padding:0 12px;font-size:14px}
/* Address in four rows: CEP / Endereço + Número / Complemento + Bairro / Cidade + Estado */
.qn-step .qn-address-fields{grid-template-columns:repeat(6,minmax(0,1fr))}
.qn-step .qn-address-fields > .form-row{grid-column:span 6}
.qn-step .qn-address-fields #billing_address_1_field{grid-column:span 4}
.qn-step .qn-address-fields #billing_number_field{grid-column:span 2}
.qn-step .qn-address-fields :is(#billing_address_2_field,#billing_neighborhood_field,#billing_city_field,#billing_state_field){grid-column:span 3}
@media(max-width:420px){.qn-step .qn-address-fields > .form-row,.qn-step .qn-address-fields :is(#billing_address_1_field,#billing_number_field,#billing_address_2_field,#billing_neighborhood_field,#billing_city_field,#billing_state_field){grid-column:1/-1}}
/* Benefits: title beside its icon, description underneath (desktop columns and mobile rows alike) */
.qn-benefits :is(a,div){flex-direction:column;align-items:flex-start;gap:6px}
.qn-benefit-head{display:flex;align-items:center;gap:10px}
.qn-benefit-head strong{color:var(--ink);font-size:14px;font-weight:700;line-height:1.25}
.qn-benefits a:hover .qn-benefit-head strong{color:var(--blue)}
.qn-benefit-icon{width:32px;height:32px;border-radius:9px}
.qn-benefit-icon .ui-icon{width:18px;height:18px}
.qn-benefit-desc{color:var(--muted);font-size:13px;line-height:1.4}
@media(min-width:801px){.qn-benefit-head strong{font-size:13px}.qn-benefit-desc{font-size:12px}}
/* Checkout on a laptop screen: entrega step must fit too */
@media(min-width:1180px){.qn-step-lead{display:none}.qn-step-head{margin-bottom:12px}}
.checkout-page .qn-checkout:has(.qn-steps-checkout){padding-top:16px}
.checkout-header{min-height:0;padding-block:14px}
.qn-step .form-row{margin-bottom:8px!important}
.qn-shipping-title{margin-bottom:6px}
.qn-shipping-options .woocommerce-shipping-methods{gap:6px}
/* WooCommerce adds a "Ver carrinho" link next to the button that added a product; not wanted in the buy bar */
.qn-sticky-buy .added_to_cart{display:none!important}
/* Payment step: methods as selectable cards inside the column, Mercado Pago forms without their own padding */
.qn-step #payment ul.payment_methods > li{box-sizing:border-box;width:100%;max-width:100%;overflow:hidden;padding:0!important;border:1px solid var(--line);border-radius:12px;background:#fff}
.qn-step #payment ul.payment_methods > li > input[type=radio]{position:absolute;opacity:0;pointer-events:none}
.qn-step #payment ul.payment_methods > li > label{display:flex;align-items:center;gap:10px;margin:0;padding:12px 14px;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer}
.qn-step #payment ul.payment_methods > li > label::before{content:"";flex:none;width:16px;height:16px;border:2px solid #b8c4d6;border-radius:50%;background:#fff;box-sizing:border-box}
.qn-step #payment ul.payment_methods > li:has(> input:checked){border-color:var(--blue);background:#f7faff}
.qn-step #payment ul.payment_methods > li:has(> input:checked) > label::before{border:5px solid var(--blue)}
.qn-step #payment ul.payment_methods > li > input:focus-visible + label{outline:2px solid #a9c3ea;outline-offset:-2px;border-radius:12px}
.qn-step #payment ul.payment_methods > li > label img{max-height:22px;width:auto;margin-left:auto}
.qn-step #payment div.payment_box{margin:0!important;padding:0 14px 14px!important;background:none!important;color:var(--ink)}
.qn-step #payment div.payment_box :is(.mp-checkout-container,.mp-checkout-ticket-container,.mp-checkout-custom-container,.mp-checkout-pix-container){max-width:100%;margin:0!important;padding:0!important;box-sizing:border-box}
.qn-step #payment div.payment_box .mp-test-mode-card{margin:0 0 12px!important;border-radius:10px}
.qn-step #payment div.payment_box input:not([type=checkbox]):not([type=radio]),.qn-step #payment div.payment_box select{max-width:100%;box-sizing:border-box}
/* Boleto: address comes from the "Entrega" step (box ticked by checkout-flow.js) */
.qn-step #payment .mp-checkout-ticket-billing-checkbox:has(input:checked) ~ :not(.mp-checkout-ticket-input-document):not(.mp-checkout-ticket-terms-and-conditions):not([class*=terms]){display:none!important}
.qn-step #payment #place_order{background:#14713b!important}
.qn-step #payment #place_order:hover{background:#0f5a2f!important}
/* Order placed inside step 3 */
.qn-steps-checkout.is-ordered #qn-step-pagamento .qn-thankyou{margin:0;padding:0;box-shadow:none}
.qn-steps-checkout.is-ordered #qn-step-pagamento .qn-thankyou :is(h1,h2){font-size:18px}
.qn-step #payment .mp-pix-template-image{max-width:120px;height:auto;margin:4px auto 8px}
.qn-step #payment :is(.mp-pix-template-title,.mp-pix-template-subtitle){font-size:14px}
/* Pix payment panel (checkout-flow.js qnPixPanel) */
.qn-pix-pay{display:flex;flex-direction:column;align-items:center;gap:10px;margin:0 0 16px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff;text-align:center}
.qn-pix-pay-order{margin:0;color:var(--muted);font-size:13px}
.qn-pix-pay h3{margin:0;color:var(--ink);font-size:20px;font-weight:700;letter-spacing:-.01em}
.qn-pix-pay-qr{display:block;width:200px;max-width:100%;height:auto;margin:4px 0;padding:8px;border:1px solid var(--line);border-radius:12px;background:#fff}
.qn-pix-pay-valid{margin:0;color:var(--muted);font-size:13px}
.qn-pix-pay-label{align-self:stretch;margin:6px 0 0;color:var(--ink);font-size:13px;font-weight:700;text-align:left}
.qn-pix-pay-row{display:flex;gap:8px;align-self:stretch}
.qn-pix-pay-row input{flex:1;min-width:0;height:44px;padding:0 12px;border:1px solid #c9d4e3;border-radius:10px;background:#f6f8fb;color:var(--ink);font:inherit;font-size:13px;text-overflow:ellipsis}
.qn-pix-pay-copy{flex:none;height:44px;padding:0 18px;border:0;border-radius:10px;background:#14713b;color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.qn-pix-pay-copy:hover{background:#0f5a2f}
.qn-pix-pay-copy:focus-visible{outline:2px solid #a9c3ea;outline-offset:2px}
.qn-pix-pay-status{margin:0;min-height:1em;color:#14713b;font-size:13px;font-weight:600}
.qn-pix-pay-status:empty{display:none}
.qn-pix-pay-how{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}
.qn-pix-pay-details{color:var(--blue);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
/* With the panel in place, Mercado Pago's own block goes away; inside step 3 only the panel stays */
.has-pix-panel .qn-thankyou-payment{display:none}
.qn-steps-checkout.is-ordered #qn-step-pagamento .qn-thankyou.has-pix-panel > :not(.qn-pix-pay){display:none}
.qn-steps-checkout.is-ordered #qn-step-pagamento .qn-thankyou:not(.has-pix-panel) :is(.woocommerce-order-details,.woocommerce-customer-details,.qn-next-steps){display:none}
/* --- Checkout polish --- */
/* 1. The active step gets the room: finished/locked columns narrow, the one being filled widens */
@media(min-width:1180px){
  .qn-checkout #customer_details.qn-steps-grid:has(> #qn-step-identificacao[data-state=active]){grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr)}
  .qn-checkout #customer_details.qn-steps-grid:has(> #qn-step-entrega[data-state=active]){grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1fr)}
  .qn-checkout #customer_details.qn-steps-grid:has(> #qn-step-pagamento[data-state=active]){grid-template-columns:minmax(0,.9fr) minmax(0,.9fr) minmax(0,1.7fr)}
}
/* 3. One spacing scale (8px steps) inside the steps */
.qn-step{padding:16px 20px}
.qn-step-head{gap:8px}
.qn-step .form-row{margin-bottom:8px!important}
.qn-step #payment ul.payment_methods{gap:8px;margin-bottom:16px}
.qn-step #payment div.payment_box{padding:0 16px 16px!important}
/* 2. Mercado Pago fields look like the rest of the form: same height, border, radius, label and focus */
.qn-step #payment .mp-checkout-custom-card-flags-list{gap:6px;margin:0 0 12px}
.qn-step #payment .mp-checkout-custom-card-flags-list li{border-radius:6px}
.qn-step #payment .mp-checkout-custom-card-row{margin:0 0 8px!important}
.qn-step #payment .mp-checkout-custom-dual-column-row{gap:12px}
.qn-step #payment .mp-checkout-custom-card-column{min-width:0}
.qn-step #payment :is(.mp-input-label,.mp-input-label label){display:block;margin:0 0 4px!important;color:var(--ink)!important;font-size:12px!important;font-weight:700!important;line-height:1.3!important;white-space:nowrap}
.qn-step #payment .mp-input-label b{color:#a1271b;font-weight:700}
.qn-step #payment :is(.mp-checkout-custom-card-input,.mp-checkout-custom-security-code-input){box-sizing:border-box;height:42px!important;min-height:42px;padding:0 12px!important;border:1px solid #c9d4e3!important;border-radius:10px!important;background:#fff!important;font-family:inherit!important;font-size:14px!important;color:var(--ink)!important;box-shadow:none!important}
.qn-step #payment :is(.mp-checkout-custom-card-input,.mp-checkout-custom-security-code-input) iframe{height:40px!important}
.qn-step #payment :is(.mp-checkout-custom-card-input,.mp-checkout-custom-security-code-input):is(:focus,:focus-within){border-color:#a9c3ea!important;box-shadow:0 0 0 3px rgba(8,104,249,.07)!important;outline:none!important}
.qn-step #payment :is(.mp-checkout-custom-card-input,.mp-checkout-custom-security-code-input)::placeholder{color:#8a96a8}
.qn-step #payment .mp-checkout-custom-security-code-container{position:relative}
.qn-step #payment .mp-checkout-custom-security-code-tooltip{width:18px;height:18px;border-width:1.5px}
.qn-step #payment .mp-helper,.qn-step #payment .mp-helper-message{margin-top:4px!important;font-size:12px!important;line-height:1.4!important}
.qn-step #payment :is(.mp-input-document,.mp-input-select-input,.mp-input-document .mp-input){height:42px!important;min-height:42px;border-color:#c9d4e3!important;border-radius:10px!important;font-family:inherit!important;font-size:14px!important}
.qn-step #payment .mp-input-document:focus-within{border-color:#a9c3ea!important;box-shadow:0 0 0 3px rgba(8,104,249,.07)!important}
.qn-step #payment .mp-checkout-ticket-billing-checkbox{display:flex;align-items:center;gap:8px;margin:0 0 12px!important;font-size:13px}
.qn-step #payment .mp-checkout-ticket-billing-checkbox p{margin:0!important}
.qn-step #payment :is(.mp-terms-and-conditions-container){margin:12px 0 0!important;font-size:12px!important;color:var(--muted)!important}
.qn-step #payment .mp-pix-template-container{padding:8px 0 0!important}
/* 4. Footer: button first, then the payment seal and one consent line */
.qn-step #payment .place-order{display:flex;flex-direction:column;gap:8px}
.qn-step #payment .place-order #place_order{order:1}
.qn-step #payment .place-order .qn-pay-seal{order:2}
.qn-step #payment .place-order .woocommerce-terms-and-conditions-wrapper{order:3}
.qn-pay-seal{display:flex;align-items:center;justify-content:center;gap:6px;margin:0;color:var(--muted);font-size:12px}
.qn-pay-seal .ui-icon{width:14px;height:14px;color:#14713b}
.qn-step .woocommerce-privacy-policy-text p{margin:0!important;color:var(--muted);font-size:12px;line-height:1.5;text-align:center}
.qn-step .woocommerce-privacy-policy-text a{color:inherit;text-decoration:underline;text-underline-offset:2px}
/* 5. Busy button */
.qn-step #payment #place_order.is-busy{display:flex;align-items:center;justify-content:center;gap:10px;opacity:.85;pointer-events:none}
.qn-step #payment #place_order.is-busy::before{content:"";width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:qn-spin .8s linear infinite}
@keyframes qn-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.qn-step #payment #place_order.is-busy::before{animation-duration:2.4s}}
/* 6. Errors: compact box inside the step, message under each field */
.qn-step .woocommerce-NoticeGroup-checkout{margin:0 0 12px}
.qn-step .woocommerce-NoticeGroup-checkout .woocommerce-error{margin:0;padding:10px 12px 10px 14px;border:0;border-left:3px solid #a1271b;border-radius:8px;background:#fdf1f0;color:#7a1d14;font-size:13px;line-height:1.5;list-style:none}
.qn-step .woocommerce-NoticeGroup-checkout .woocommerce-error::before{display:none}
.qn-step .woocommerce-NoticeGroup-checkout .woocommerce-error li{margin:0;padding:0}
.qn-field-error{margin:4px 0 0;color:#a1271b;font-size:12px;line-height:1.4}
.qn-step .form-row.woocommerce-invalid :is(input.input-text,select){border-color:#e3a39c!important}
/* 7. Summary: shipping on one line, even product rows */
.qn-steps-summary table.woocommerce-checkout-review-order-table tbody tr.cart_item{padding:12px 0}
.qn-steps-summary .qn-shipping-total td{display:flex!important;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:2px 8px}
.qn-steps-summary .qn-shipping-chosen{display:inline;color:var(--muted);font-size:12px}
.qn-steps-summary tr.order-total{padding-bottom:4px}
/* Mercado Pago card fields: its stylesheet uses three IDs and !important, so these selectors go one level deeper */
body #qn-step-pagamento #mp-checkout-custom-root #mp-custom-checkout-form-container .mp-checkout-custom-card-form :is(.mp-checkout-custom-card-input,.mp-checkout-custom-security-code-input),
body #qn-step-pagamento #mp-checkout-custom-root #mp-custom-checkout-form-container #mp-card-holder-div input.mp-checkout-custom-card-input.mp-card-holder-name{box-sizing:border-box!important;height:42px!important;min-height:42px!important;border:1px solid #c9d4e3!important;border-radius:10px!important;background:#fff!important;font-family:inherit!important;font-size:14px!important;color:var(--ink)!important;box-shadow:none!important}
body #qn-step-pagamento #mp-checkout-custom-root #mp-custom-checkout-form-container .mp-checkout-custom-card-form :is(.mp-checkout-custom-card-input,.mp-checkout-custom-security-code-input) iframe{height:40px!important}
body #qn-step-pagamento #mp-checkout-custom-root #mp-custom-checkout-form-container .mp-checkout-custom-card-form :is(.mp-checkout-custom-card-input,.mp-checkout-custom-security-code-input):is(.mp-focus,:focus,:focus-within),
body #qn-step-pagamento #mp-checkout-custom-root #mp-custom-checkout-form-container #mp-card-holder-div input.mp-checkout-custom-card-input.mp-card-holder-name.mp-focus{border:1px solid #a9c3ea!important;box-shadow:0 0 0 3px rgba(8,104,249,.07)!important}
body #qn-step-pagamento #mp-checkout-custom-root #mp-custom-checkout-form-container .mp-checkout-custom-card-form :is(.mp-checkout-custom-card-input,.mp-checkout-custom-security-code-input).mp-error-2px,
body #qn-step-pagamento #mp-checkout-custom-root #mp-custom-checkout-form-container #mp-card-holder-div input.mp-checkout-custom-card-input.mp-card-holder-name.mp-error-2px{border:1px solid #e3a39c!important;box-shadow:0 0 0 3px rgba(161,39,27,.06)!important}
/* WooCommerce paints validated fields green; only errors are coloured here */
.qn-checkout .woocommerce form .qn-step .form-row.woocommerce-validated :is(input.input-text,select){border-color:#c9d4e3}
.qn-checkout .woocommerce form .qn-step .form-row.woocommerce-validated :is(input.input-text,select):focus{border-color:#a9c3ea}
