.miresa-product-page{--miresa-accent:var(--theme-palette-color-1,#007476);--miresa-text:var(--theme-text-color,#1d1d1d);--miresa-muted:#666;--miresa-line:#e5e5e5;--miresa-soft:#f7f7f5;max-width:1240px;margin:0 auto;color:var(--miresa-text)}
.miresa-product-main{display:grid;grid-template-columns:minmax(0,52fr) minmax(360px,48fr);gap:clamp(28px,2.4vw,36px);align-items:start;padding:clamp(24px,4vw,52px) 0 clamp(56px,7vw,92px)}
.miresa-product-gallery,.miresa-product-summary{min-width:0}.miresa-product-gallery .woocommerce-product-gallery{float:none!important;width:100%!important;margin:0}.miresa-product-gallery .woocommerce-product-gallery__wrapper{margin:0}.miresa-product-gallery .woocommerce-product-gallery__image{background:#fafafa}.miresa-product-gallery .woocommerce-product-gallery__image>a{display:flex;align-items:flex-start;justify-content:center;width:100%}.miresa-product-gallery .woocommerce-product-gallery__image img{display:block;width:auto!important;max-width:100%;height:auto;max-height:620px;object-fit:contain;margin-inline:auto}
.miresa-thumb-carousel{--miresa-thumbs-visible:4;position:relative;margin-top:12px;padding:0 32px}.miresa-product-gallery .flex-control-thumbs{display:flex!important;flex-wrap:nowrap!important;gap:10px;margin:0!important;padding:0!important;overflow-x:auto;overscroll-behavior-inline:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none}.miresa-product-gallery .flex-control-thumbs::-webkit-scrollbar{display:none}.miresa-product-gallery .flex-control-thumbs li{flex:0 0 calc((100% - (var(--miresa-thumbs-visible) - 1)*10px)/var(--miresa-thumbs-visible));width:auto!important;max-width:none!important;margin:0!important;scroll-snap-align:start}.miresa-product-gallery .flex-control-thumbs img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border:1px solid transparent;border-radius:0;opacity:.72;transition:opacity .18s ease,border-color .18s ease}.miresa-product-gallery .flex-control-thumbs img:hover,.miresa-product-gallery .flex-control-thumbs img.flex-active{border-color:var(--miresa-accent);opacity:1}.miresa-thumb-arrow{position:absolute;top:50%;z-index:2;width:26px;height:38px;padding:0;border:1px solid rgba(27,44,45,.18);border-radius:0;background:rgba(255,255,255,.94);color:var(--miresa-text);transform:translateY(-50%);font-size:20px;line-height:1;box-shadow:none;cursor:pointer}.miresa-thumb-arrow:hover{border-color:var(--miresa-accent);background:#fff;color:var(--miresa-accent)}.miresa-thumb-arrow--prev{left:0}.miresa-thumb-arrow--next{right:0}.miresa-thumb-arrow[hidden]{display:none!important}
.miresa-product-summary{width:100%!important;margin:0!important;padding:0}.miresa-product-summary .product_title{margin:0 0 14px;font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.12;letter-spacing:-.025em}.miresa-product-pricing{margin-bottom:24px}.miresa-product-pricing>.price{display:block;margin:0;color:var(--miresa-text);font-size:clamp(1.45rem,2.2vw,2rem);font-weight:700;line-height:1.35}.miresa-product-pricing [class*="installment"],.miresa-product-pricing [class*="pix"]{margin-top:5px}.miresa-product-summary #miresa-offer-strip{display:none!important}.miresa-product-summary .woo-custom-installments-group-main-price{display:flex!important;align-items:baseline;gap:6px!important}.miresa-product-summary .woo-custom-installments-group-main-price .woo-custom-installments-price:first-child{order:1!important}.miresa-product-summary .woo-custom-installments-group-main-price .woo-custom-installments-range-price-dash{order:2!important;margin:0 6px}.miresa-product-summary .woo-custom-installments-group-main-price .woo-custom-installments-price:last-child{order:3!important}.miresa-product-summary.miresa-has-variation .woo-custom-installments-group-main-price .woo-custom-installments-range-price-dash,.miresa-product-summary.miresa-has-variation .woo-custom-installments-group-main-price .woo-custom-installments-price:last-child{display:none!important}
.miresa-product-summary form.cart{margin:0}.miresa-product-summary table.variations{width:100%;margin:0 0 18px}.miresa-product-summary table.variations th,.miresa-product-summary table.variations td{display:block;width:100%;padding:0 0 8px;text-align:left}.miresa-product-summary table.variations tr{display:block;margin-bottom:16px}.miresa-product-summary table.variations label{font-weight:650}.miresa-product-summary table.variations select{width:100%;min-height:48px}
.miresa-product-summary .variable-items-wrapper{display:flex;flex-wrap:wrap;gap:10px}.miresa-product-summary .variable-item{min-width:46px!important;min-height:46px!important;margin:0!important;border:1px solid #cfcfcf!important;box-shadow:none!important}.miresa-product-summary .variable-item.image-variable-item{width:64px!important;height:64px!important;padding:3px!important}.miresa-product-summary .variable-item.selected{border:2px solid var(--miresa-accent)!important}.miresa-product-summary .reset_variations{display:inline-block;margin-top:8px;color:var(--miresa-muted);font-size:.85rem}
.miresa-product-summary .woocommerce-variation{margin:12px 0}.miresa-product-summary .woocommerce-variation-price .price{color:var(--miresa-text);font-size:1.35rem;font-weight:700}.miresa-product-summary .stock{margin:8px 0;color:var(--miresa-muted)}.miresa-product-summary .woocommerce-variation-add-to-cart,.miresa-product-summary form:not(.variations_form){display:flex;flex-wrap:wrap;gap:10px}.miresa-product-summary .quantity{float:none!important;margin:0!important}.miresa-product-summary .quantity .qty{width:76px;min-height:52px;text-align:center}.miresa-product-summary .single_add_to_cart_button{flex:1 1 240px;min-height:52px;padding:12px 24px!important;border-radius:0!important;background:var(--miresa-accent)!important;font-weight:700}.miresa-product-summary .single_add_to_cart_button:hover{filter:brightness(.9)}.miresa-product-summary .single_add_to_cart_button.disabled{opacity:.45}
.miresa-product-assurances{margin-top:22px;padding-top:18px;border-top:1px solid var(--miresa-line);color:var(--miresa-muted);font-size:.9rem}.miresa-product-assurances p{margin:0 0 7px}
.miresa-product-section{max-width:920px;margin:0 auto;padding:clamp(48px,7vw,84px) 0;border-top:1px solid var(--miresa-line)}.miresa-product-section h2,.miresa-product-related>.related>h2{margin:0 0 28px;font-size:clamp(1.55rem,2.5vw,2.1rem);line-height:1.2;letter-spacing:-.02em}.miresa-product-copy{max-width:780px;color:#444;font-size:1.02rem;line-height:1.75}.miresa-product-copy>:first-child{margin-top:0}.miresa-product-copy>:last-child{margin-bottom:0}.miresa-product-copy img,.miresa-product-copy figure,.miresa-product-copy picture,.miresa-product-copy iframe{display:none!important}
.miresa-product-table-wrap{overflow:hidden;border:1px solid var(--miresa-line)}.miresa-product-specifications table{width:100%;margin:0;border:0;border-collapse:collapse}.miresa-product-specifications th,.miresa-product-specifications td{padding:14px 18px;border:0;text-align:left;vertical-align:top}.miresa-product-specifications thead th{background:var(--miresa-accent);color:#fff;font-weight:650}.miresa-product-specifications tbody th{width:36%;font-weight:650}.miresa-product-specifications tbody tr:nth-child(even){background:var(--miresa-soft)}
.miresa-product-reviews #reviews{margin:0}.miresa-product-reviews #comments>h2:first-child{font-size:1.05rem}.miresa-product-reviews .commentlist{padding:0}.miresa-product-reviews .comment-respond{margin-top:28px}
.miresa-product-faq-list{border-top:1px solid var(--miresa-line)}.miresa-product-faq details{border-bottom:1px solid var(--miresa-line)}.miresa-product-faq summary{position:relative;padding:18px 42px 18px 0;cursor:pointer;list-style:none;font-weight:650}.miresa-product-faq summary::-webkit-details-marker{display:none}.miresa-product-faq summary::after{content:"+";position:absolute;top:14px;right:5px;font-size:1.4rem;font-weight:400}.miresa-product-faq details[open] summary::after{content:"−"}.miresa-product-faq details p{max-width:740px;margin:0;padding:0 42px 20px 0;color:var(--miresa-muted);line-height:1.65}
.miresa-product-related{padding:clamp(56px,7vw,88px) 0 0;border-top:1px solid var(--miresa-line)}.miresa-product-related .products{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(max-width:1024px){.miresa-product-main{grid-template-columns:minmax(0,52fr) minmax(320px,48fr);gap:28px}.miresa-thumb-carousel{--miresa-thumbs-visible:3}.miresa-product-related .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:767px){.miresa-product-page{width:100%}.miresa-product-main{display:block;padding-top:14px}.miresa-product-gallery{margin-bottom:28px}.miresa-product-gallery .woocommerce-product-gallery__image img{max-height:none}.miresa-thumb-carousel{--miresa-thumbs-visible:3;padding:0 26px}.miresa-product-gallery .flex-control-thumbs{gap:7px}.miresa-product-gallery .flex-control-thumbs li{flex-basis:calc((100% - 14px)/3)}.miresa-thumb-arrow{width:22px;height:34px;font-size:17px}.miresa-product-summary .product_title{font-size:1.75rem}.miresa-product-summary .variable-item{min-width:50px!important;min-height:50px!important}.miresa-product-summary .variable-item.image-variable-item{width:68px!important;height:68px!important}.miresa-product-summary .woocommerce-variation-add-to-cart,.miresa-product-summary form:not(.variations_form){display:grid;grid-template-columns:84px minmax(0,1fr)}.miresa-product-summary .quantity .qty{width:84px}.miresa-product-summary .single_add_to_cart_button{width:100%;min-width:0}.miresa-product-section{padding:46px 0}.miresa-product-section h2,.miresa-product-related>.related>h2{margin-bottom:22px}.miresa-product-table-wrap{overflow:visible}.miresa-product-specifications th,.miresa-product-specifications td{padding:12px;overflow-wrap:anywhere}.miresa-product-specifications tbody th{width:42%}.miresa-product-related .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:420px){.miresa-product-summary .woocommerce-variation-add-to-cart,.miresa-product-summary form:not(.variations_form){grid-template-columns:1fr}.miresa-product-summary .quantity,.miresa-product-summary .quantity .qty{width:100%}}
/* Keep the global Blocksy branding identical to the Home header. */
.single-product #header.ct-header [data-id="logo"] a.site-logo-container {
	position: relative;
	min-width: 170px;
	height: 52px;
}

.single-product #header.ct-header [data-id="logo"] a.site-logo-container img {
	opacity: 0 !important;
	visibility: hidden !important;
}

.single-product #header.ct-header [data-id="logo"] a.site-logo-container::after {
	content: "MIRESA";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	color: #007476;
	font: 800 clamp(31px, 3vw, 48px)/1 "Trebuchet MS", Arial, sans-serif;
	letter-spacing: .02em;
	z-index: 2;
}

@media (max-width: 640px) {
	.single-product #header.ct-header [data-id="logo"] a.site-logo-container {
		min-width: 132px;
		height: 52px;
	}

	.single-product #header.ct-header [data-id="logo"] a.site-logo-container::after {
		font-size: 32px;
	}
}

/*
 * Blocksy applies a 3/4 aspect ratio to the image element. In a gallery with
 * only one image, the child theme's width:auto rule then narrows square
 * product images and leaves large empty side gutters. Let the element fill
 * the single-image stage and contain the actual bitmap without cropping it.
 * Multi-image Flexy galleries are nested deeper and are intentionally not
 * matched by this direct-child selector.
 */
.miresa-product-gallery .ct-product-gallery-container > .ct-media-container {
	align-items: center;
	justify-content: center;
}

.miresa-product-gallery .ct-product-gallery-container > .ct-media-container > img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto !important;
	object-fit: contain;
	object-position: center;
}

/*
 * The Pagaleve plugin injects a promotional calculator banner above the
 * variation selectors. Miresa already presents the same Pix-in-4x message in
 * the payment section below delivery, so hide only the product-page banner.
 * The Pagaleve checkout gateway and the lower payment information remain
 * enabled and untouched.
 */
.single-product #wc-pagaleve-widget-container {
	display: none !important;
}
