/* Single-product template 557: top product block only. */
@media (max-width: 767px) {
	.single-product .elementor-557 .e-75b7f87 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		padding: 40px 20px;
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: stretch;
		gap: 8px;
		transform: none;
	}

	.single-product .elementor-557 .e-75b7f87 > .e-c4d2f9b,
	.single-product .elementor-557 .e-75b7f87 > .e-90e08d6 {
		padding-inline: 0;
	}

	.single-product .elementor-557 .e-75b7f87 > .e-c4d2f9b,
	.single-product .elementor-557 .e-75b7f87 > .e-90e08d6 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin-inline: 0;
		flex: 0 1 auto;
		transform: none;
	}

	.single-product .elementor-557 .e-c4d2f9b {
		order: 1;
	}

	.single-product .elementor-557 .e-c4d2f9b .woocommerce-product-gallery {
		margin-bottom: 0;
	}

	.single-product .elementor-557 .e-90e08d6 {
		order: 2;
	}

	.single-product .elementor-557 .e-c4d2f9b .woocommerce-product-gallery,
	.single-product .elementor-557 .e-c4d2f9b .woocommerce-product-gallery__wrapper,
	.single-product .elementor-557 .e-c4d2f9b .woocommerce-product-gallery__image,
	.single-product .elementor-557 .e-c4d2f9b a,
	.single-product .elementor-557 .e-c4d2f9b img {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		transform: none;
	}

	.single-product .elementor-557 .e-c4d2f9b .woocommerce-product-gallery__wrapper {
		max-width: none;
	}

	.single-product .elementor-557 .e-c4d2f9b img {
		height: auto;
	}

	.single-product .elementor-557 .e-90e08d6 > *,
	.single-product .elementor-557 .e-90e08d6 form.cart,
	.single-product .elementor-557 .e-90e08d6 table.variations,
	.single-product .elementor-557 .e-90e08d6 table.variations tbody,
	.single-product .elementor-557 .e-90e08d6 table.variations tr,
	.single-product .elementor-557 .e-90e08d6 table.variations th,
	.single-product .elementor-557 .e-90e08d6 table.variations td,
	.single-product .elementor-557 .e-90e08d6 .single_variation_wrap,
	.single-product .elementor-557 .e-90e08d6 .woocommerce-variation-add-to-cart,
	.single-product .elementor-557 .e-90e08d6 .woocommerce-product-details__short-description {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.single-product .elementor-557 .elementor-element-06cc0ff .elementor-heading-title,
	.single-product .elementor-557 .e-90e08d6 .woocommerce-product-details__short-description,
	.single-product .elementor-557 .e-fd27818 :is(.e-heading-base, .e-paragraph-base) {
		max-width: 100%;
		min-width: 0;
		white-space: normal;
		overflow-wrap: break-word;
		word-break: normal;
	}

	.single-product .elementor-557 .elementor-element-06cc0ff .elementor-heading-title {
		width: 100%;
		font-size: 28px;
		line-height: 1.05;
		text-align: left;
	}

	.single-product .elementor-557 .elementor-element-9db70b6 table.variations,
	.single-product .elementor-557 .elementor-element-9db70b6 table.variations tbody,
	.single-product .elementor-557 .elementor-element-9db70b6 table.variations tr,
	.single-product .elementor-557 .elementor-element-9db70b6 table.variations th,
	.single-product .elementor-557 .elementor-element-9db70b6 table.variations td {
		display: block;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.single-product .elementor-557 .elementor-element-9db70b6 table.variations th,
	.single-product .elementor-557 .elementor-element-9db70b6 table.variations td {
		padding: 0;
		text-align: left;
	}

	.single-product .elementor-557 .elementor-element-9db70b6 table.variations th {
		margin-bottom: 8px;
	}

	.single-product .elementor-557 .elementor-element-9db70b6 table.variations td.value select {
		min-height: 46px;
		padding-block: 0;
	}

	.single-product .elementor-557 .elementor-element-9db70b6 table.variations .reset_variations {
		display: block;
		width: fit-content;
		max-width: 100%;
		margin-top: 8px;
		text-align: left;
	}

	.single-product .elementor-557 .elementor-element-9db70b6 form.cart .single_variation_wrap {
		margin-top: 0 !important;
	}

	.single-product .elementor-557 .e-90e08d6 table.variations td.value select,
	.single-product .elementor-557 .e-90e08d6 select,
	.single-product .elementor-557 .e-90e08d6 input,
	.single-product .elementor-557 .e-90e08d6 button {
		box-sizing: border-box;
		max-width: 100%;
	}

	.single-product .elementor-557 .e-90e08d6 table.variations td.value select {
		width: 100%;
	}

	.single-product .elementor-557 .e-90e08d6 .woocommerce-variation-add-to-cart {
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
		gap: 12px;
	}

	.single-product .elementor-557 .e-90e08d6 .quantity {
		box-sizing: border-box;
		width: 72px;
		max-width: 72px;
		margin: 0;
		flex: 0 0 72px;
	}

	.single-product .elementor-557 .e-90e08d6 .quantity .qty {
		box-sizing: border-box;
		width: 100%;
		height: 48px;
		min-height: 48px;
		padding-block: 0;
	}

	.single-product .elementor-557 .e-90e08d6 .single_add_to_cart_button {
		width: auto;
		min-width: 0;
		max-width: 100%;
		height: 48px;
		min-height: 48px;
		padding-block: 0;
		flex: 1 1 auto;
		white-space: normal;
	}

	.single-product .elementor-557 .elementor-element-d073173 {
		margin-top: 22px;
		text-align: left;
	}

	.single-product .elementor-557 .elementor-element-d073173 .woocommerce-product-details__short-description {
		line-height: 1.6;
	}

	.single-product .elementor-557 .e-fd27818 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: stretch;
		gap: 12px;
	}

	.single-product .elementor-557 .e-fd27818 > .e-con {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		padding: 0;
		flex: 0 1 auto;
		align-items: center;
		gap: 8px;
	}

	.single-product .elementor-557 .e-fd27818 > .e-con .elementor-widget-icon {
		flex: 0 0 auto;
	}

	.single-product .elementor-557 .e-fd27818 > .e-con :is(.e-heading-base, .e-paragraph-base) {
		width: auto;
		flex: 1 1 auto;
		text-align: left;
	}

	/* "Por que escolher a Ceara Nuts?": mobile section only. */
	.single-product .elementor-557 .e-4e714a8 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		padding: 48px 20px 36px;
	}

	.single-product .elementor-557 .e-4e714a8 .e-9ea49b8-5920e81 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		padding: 0;
		gap: 24px;
	}

	.single-product .elementor-557 .e-4e714a8 .e-cfb9712-0148452 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin: 0;
		font-size: 26px;
		line-height: 1.15;
		text-align: left;
	}

	.single-product .elementor-557 .e-4e714a8 .e-cfb9712-0148452 :is(.e-heading-base, .elementor-heading-title) {
		width: 100%;
		max-width: 100%;
		font-size: 26px;
		line-height: 1.15;
		text-align: left;
		white-space: normal;
		overflow-wrap: break-word;
		word-break: normal;
	}

	.single-product .elementor-557 .e-4e714a8 .e-6626938-8323cd5 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		padding: 0;
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: stretch;
		justify-content: flex-start;
		gap: 0;
	}

	.single-product .elementor-557 .e-4e714a8 .e-2ce593f-7f398f8,
	.single-product .elementor-557 .e-4e714a8 .e-8d32c77-dd906e7 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		height: auto;
		min-height: 0;
		padding: 0;
		flex: 0 1 auto;
		align-items: stretch;
		text-align: left;
	}

	.single-product .elementor-557 .e-4e714a8 .e-8d32c77-dd906e7 {
		margin-top: 22px;
		padding: 20px;
		border: 1px solid rgba(36, 63, 37, 0.10);
		border-radius: 12px;
		background: #fff;
	}

	.single-product .elementor-557 .e-4e714a8 :is(.e-8c7bdb1-4c6fbce, .e-7a9616b-87e5ba7, .e-30b8857-51542fb, .e-2f34a82-d240f6e) {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		text-align: left;
		white-space: normal;
		overflow-wrap: break-word;
		word-break: normal;
	}

	.single-product .elementor-557 .e-4e714a8 .e-7a9616b-87e5ba7 :is(.e-heading-base, .elementor-heading-title) {
		font-size: 22px;
		line-height: 1.1;
		text-align: left;
	}

	.single-product .elementor-557 .e-4e714a8 .e-8c7bdb1-4c6fbce {
		margin-bottom: 6px;
		line-height: 1.3;
	}

	.single-product .elementor-557 .e-4e714a8 .e-7a9616b-87e5ba7 {
		margin-bottom: 12px;
		font-size: 22px;
		line-height: 1.1;
	}

	.single-product .elementor-557 .e-4e714a8 .e-30b8857-51542fb :is(.e-paragraph-base, p) {
		line-height: 1.6;
		text-align: left;
	}

	.single-product .elementor-557 .e-4e714a8 .e-2f34a82-d240f6e :is(.e-heading-base, .elementor-heading-title) {
		font-size: 19px;
		font-weight: 600;
		line-height: 1.2;
		text-align: left;
	}

	.single-product .elementor-557 .e-4e714a8 .e-2f34a82-d240f6e {
		margin-bottom: 15px;
		font-size: 19px;
		font-weight: 600;
		line-height: 1.2;
	}

	.single-product .elementor-557 .elementor-element-b86da18,
	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes {
		display: table;
		table-layout: fixed;
		margin: 0;
	}

	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes tbody {
		display: table-row-group;
	}

	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes tr {
		display: table-row;
		height: auto;
	}

	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes tr:not(:last-child) th,
	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes tr:not(:last-child) td {
		border-bottom: 1px solid rgba(36, 63, 37, 0.10);
	}

	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes th,
	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes td {
		box-sizing: border-box;
		display: table-cell;
		min-width: 0;
		height: auto;
		padding-block: 11px;
		text-align: left;
		vertical-align: top;
		white-space: normal;
		overflow-wrap: break-word;
		word-break: normal;
	}

	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes th {
		width: 35%;
		padding-right: 14px;
		color: #17472b;
		font-weight: 600;
	}

	.single-product .elementor-557 .elementor-element-b86da18 table.shop_attributes td {
		width: 65%;
	}

	/* Related products: retain two columns and center any final odd card. */
	.single-product .elementor-557 .e-9cd16e6,
	.single-product .elementor-557 .elementor-element-8c19377,
	.single-product .elementor-557 .elementor-element-8c19377 ul.products {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.single-product .elementor-557 .elementor-element-8c19377 ul.products {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 20px !important;
		row-gap: 20px !important;
		margin-inline: 0;
	}

	.single-product .elementor-557 .elementor-element-8c19377 ul.products > li.product {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin: 0;
	}

	.single-product .elementor-557 .elementor-element-8c19377 ul.products > li.product:last-child:nth-child(odd) {
		grid-column: 1 / -1;
		width: calc((100% - 20px) / 2) !important;
		max-width: calc((100% - 20px) / 2) !important;
		justify-self: center;
	}

	.single-product .elementor-557 .elementor-element-8c19377 ul.products > li.product > a,
	.single-product .elementor-557 .elementor-element-8c19377 ul.products > li.product img,
	.single-product .elementor-557 .elementor-element-8c19377 ul.products > li.product .button {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.single-product .elementor-557 .elementor-element-8c19377 ul.products > li.product img {
		height: auto;
	}

	.single-product .elementor-557 .elementor-element-8c19377 ul.products > li.product .woocommerce-loop-product__title,
	.single-product .elementor-557 .elementor-element-8c19377 ul.products > li.product .price {
		max-width: 100%;
		white-space: normal;
		overflow-wrap: break-word;
		word-break: normal;
	}
}

/* Touch quantity controls: preserve the native input and purchase form. */
@media (max-width: 767px) {
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity {
        display: grid;
        grid-template-columns: 44px 44px 44px;
        width: 132px;
        max-width: 132px;
        flex: 0 0 132px;
    }
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity .qty {
        width: 44px;
        min-width: 0;
        padding: 0;
        text-align: center;
        border-radius: 0;
        appearance: textfield;
        -moz-appearance: textfield;
    }
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity .qty::-webkit-inner-spin-button,
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity .qty::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity .cn-qty-step {
        width: 44px;
        min-width: 44px;
        height: 48px;
        padding: 0;
        border: 1px solid #d9d4c8;
        border-radius: 0;
        background: #fff;
        color: #17472b;
        font-size: 22px;
        line-height: 1;
        touch-action: manipulation;
        cursor: pointer;
    }
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity .cn-qty-minus {
        border-radius: 8px 0 0 8px;
    }
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity .cn-qty-plus {
        border-radius: 0 8px 8px 0;
    }
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity .cn-qty-step:disabled {
        opacity: 0.4;
        cursor: default;
    }
    .single-product .elementor-557 .e-90e08d6 .quantity.cn-mobile-quantity .cn-qty-step:focus-visible {
        outline: 2px solid #17472b;
        outline-offset: 2px;
    }
}
