/* Store identity and catalogue presentation. */
.logo-mark{background:none;transform:none;overflow:visible;flex-shrink:0}
.logo-mark img{display:block;width:100%;height:100%;object-fit:contain;border-radius:29%}
.store-page .products-section{background:linear-gradient(160deg,#f5faf4,#fffaf1);padding-block:52px 38px}
.store-page .catalog-toolbar{background:#ffffffa8;border:1px solid #e0eadf;padding:14px;border-radius:18px}
.store-page .product-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));align-items:stretch;gap:22px;min-height:0}
.store-page .product-grid.single-product{grid-template-columns:minmax(0,370px);justify-content:center}
.store-page .product-card{border:1px solid #deeadb;border-radius:24px;background:linear-gradient(150deg,#fff 65%,#f2f8ed);box-shadow:0 7px 22px #2451350c;position:relative;display:flex;flex-direction:column}
.store-page .product-card:hover{box-shadow:0 12px 26px #24513514;transform:translateY(-4px)}
.store-page .product-img-wrap{height:235px;min-height:0;margin:10px 10px 0;border-radius:17px;background:radial-gradient(ellipse at 30% 20%,#ffffffb0,transparent 75%),var(--product-bg,#fff3df)}
.store-page .product-body{padding:18px;display:flex;flex-direction:column;flex:1}
.store-page .product-category{align-self:flex-start;color:#36673b;background:#eaf4e4;padding:3px 11px;border-radius:20px;font-size:10px;letter-spacing:0}
.store-page .product-title{font-size:19px;margin:12px 0 6px}
.store-page .product-desc{line-height:1.9;min-height:0;color:#728273;margin-bottom:12px}
.store-page .price-line{padding-block:10px;align-items:center;margin-top:auto;border-top:1px solid #e5eddf}
.store-page .price-text{font-size:24px;color:#14764e}
.store-page .old-price:empty{display:none}
.store-page .product-quick{padding-block:9px;text-align:center}
.store-page .product-add{background:#14764e;border:1px solid #14764e;color:white;border-radius:12px;min-height:44px;margin-top:5px;box-shadow:0 4px 10px #14764e12}
.store-page .product-add:hover{background:#0e5c3d;color:#fff}
.store-page .product-add:disabled{background:#e4ebe0;border-color:#d9e4d6;color:#667763;box-shadow:none}
.store-page .catalog-footnote{line-height:1.9;margin-top:20px}
.store-page .site-footer{padding-bottom:22px}
.store-page .site-footer .copyright{padding-bottom:0}
.footer-in-view .facebook-float,.footer-in-view .whatsapp-float{visibility:hidden;pointer-events:none;opacity:0}
.catalog-loading{grid-column:1/-1;width:100%;padding:14px 0}
.loading-brand{display:flex;align-items:center;justify-content:center;gap:16px;padding:20px;color:#166944}
.loading-brand img{border-radius:20px;box-shadow:0 5px 15px #14764e14}
.loading-brand b{font-size:21px}.loading-brand p{margin:5px 0 0;color:#718274;font-size:12px}
.loading-ring{width:24px;height:24px;border:3px solid #d9e8d1;border-top-color:#f59a36;border-radius:50%;animation:loading-turn 1s linear infinite}
.skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:14px}
.skeleton-grid span{height:310px;border-radius:24px;background:linear-gradient(100deg,#eaf0e5 25%,#f9fbf6 50%,#eaf0e5 75%);background-size:200% 100%;animation:loading-sheen 1.8s ease-in-out infinite}
@keyframes loading-turn{to{transform:rotate(360deg)}}@keyframes loading-sheen{to{background-position:-200% 0}}
.tracking-page{background:#f6f9f3;min-height:100svh}
.tracking-brand{text-align:center;border-bottom:1px solid #e2eadc;background:#fff;padding:20px}
.tracking-container{padding-top:24px;padding-bottom:28px}
.tracking-home{margin-bottom:18px}
.tracking-security{padding:14px 18px;border-radius:14px;background:#edf3e7;margin-bottom:0}
.review-consent{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #dce8d5;background:#f5f9f1;border-radius:12px;font-size:12px;line-height:1.9}
.review-consent input{flex:0 0 18px;width:18px;height:18px;margin:4px 0 0;accent-color:#14764e}
.reviews-section{background:linear-gradient(#fffcf4,#f4f9ef);padding-block:54px}
.reviews-section h2 span,.reviews-intro h1 span{color:#f58a2f}
.reviews-section .section-top p{line-height:1.9}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.review-card{padding:24px;border:1px solid #e2eadb;border-radius:20px;background:#fff;box-shadow:0 5px 18px #23472c08;display:flex;flex-direction:column;min-width:0}
.review-card-head{display:flex;align-items:center;gap:10px}.review-avatar{display:grid;place-items:center;background:#eef5e4;color:#176b45;width:38px;height:38px;border-radius:13px;font-weight:900}
.review-author{font-size:13px;font-weight:800;color:#315c3d}
.review-stars{color:#bf790f;letter-spacing:3px;font-size:21px;margin-block:14px 10px;direction:ltr;text-align:right}
.review-comment{font-size:13px;line-height:2;color:#536b57;overflow-wrap:anywhere;white-space:pre-wrap;flex:1;margin-bottom:18px}
.review-date{font-size:11px;color:#778674}
.reviews-state{grid-column:1/-1;padding:28px 20px;border:1px dashed #cddfc3;border-radius:18px;background:#ffffffba;color:#5e755f;text-align:center;line-height:2;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}
.reviews-invitation{text-align:center;font-size:12px;color:#61765d;margin:22px 0 0}.reviews-invitation a{color:#14764e;text-decoration:underline;text-underline-offset:4px;font-weight:800}
.reviews-page{background:#f8fbf5;min-height:100svh;display:flex;flex-direction:column}
.reviews-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:22px}
.reviews-main{flex:1}.reviews-intro{text-align:center;padding:38px 20px;background:linear-gradient(120deg,#eaf4e3,#fff5e3);border-radius:26px;border:1px solid #e4ebd9;margin-block:16px 32px}
.reviews-intro h1{font-size:clamp(25px,4vw,38px);line-height:1.6;margin-bottom:12px}.reviews-intro p{max-width:620px;margin:0 auto 20px;line-height:2;color:#60715a;font-size:13px}
.reviews-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px;font-size:13px;color:#396346}
.reviews-toolbar label{display:flex;align-items:center;gap:10px}.reviews-toolbar select{padding:10px;border:1px solid #d4e2cc;border-radius:10px;background:white;color:#315c3d}
.reviews-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-block:30px}.reviews-pagination span{font-size:12px;color:#61765d}
.reviews-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;padding:24px;border-top:1px solid #e0e9d9;margin-top:24px;font-size:12px;color:#326141}
@media(max-width:800px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.store-page .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.store-page .product-img-wrap{height:210px}.skeleton-grid{grid-template-columns:repeat(2,1fr)}.skeleton-grid span:last-child{display:none}}
@media(max-width:520px){.store-page .products-section{padding-block:34px 28px}.store-page .catalog-toolbar{padding:10px}.store-page .product-grid{gap:10px}.store-page .product-img-wrap{height:150px;margin:7px 7px 0;border-radius:12px}.store-page .product-body{padding:12px 10px}.store-page .product-card{border-radius:18px}.store-page .product-title{font-size:15px}.store-page .price-text{font-size:20px}.store-page .product-add{font-size:11px}.store-page .product-grid.single-product{grid-template-columns:minmax(0,340px)}.single-product .product-img-wrap{height:220px}.reviews-section{padding-block:36px}.reviews-grid{grid-template-columns:1fr}.review-card{padding:20px}.reviews-header{flex-wrap:wrap}.reviews-header .btn{font-size:11px;padding:10px 14px}.reviews-intro{padding:26px 16px}.loading-brand{gap:12px;padding-inline:0}.loading-brand b{font-size:18px}.loading-brand p{font-size:10px}.loading-brand img{width:52px;height:52px}.skeleton-grid span{height:230px}.reviews-pagination{gap:10px}.reviews-pagination .btn{padding-inline:16px}.store-page .site-footer{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){.loading-ring,.skeleton-grid span{animation:none}.store-page .product-card,.store-page .product-img-wrap img{transition:none}.store-page .product-card:hover{transform:none}}

.order-help-bar{gap:10px;flex-wrap:wrap}
@media(max-width:640px){.catalog-in-view .facebook-float,.catalog-in-view .whatsapp-float{visibility:hidden;pointer-events:none;opacity:0}}
.no-scroll .facebook-float,.no-scroll .whatsapp-float{visibility:hidden;pointer-events:none;opacity:0}

/* Show all saved photos, including the separately stored primary photo. */
.admin-photo-list .uploaded-photo{height:auto;min-height:190px;width:140px;max-width:100%;padding:8px;border:1px solid #d9e6d3;border-radius:14px;background:#fff;display:flex;flex-direction:column;gap:7px;position:relative}
.admin-photo-list .uploaded-photo img{width:100%;height:105px;object-fit:contain;border-radius:8px;background:#fff}
.photo-caption{font-size:10px;color:#346441;font-weight:800;text-align:center}
.admin-photo-list .photo-actions{display:grid;gap:5px}
.admin-photo-list .uploaded-photo button{position:static;inset:auto;display:block;width:100%;font-size:10px;border:0;border-radius:7px;padding:6px;min-height:30px}
.admin-photo-list [data-primary-photo]{background:#e8f3e4;color:#176948}
.admin-photo-list [data-remove-photo]{background:#fff0ed;color:#a63d32}
.store-page .product-img-wrap img,.store-page .details-image img{object-fit:contain;background:#fff}
.store-page .gallery-thumb img{object-fit:contain;background:#fff}

/* Consistent rounded arrows, sized independently of the text font. */
.action-arrow{display:inline-block;flex:0 0 22px;width:22px;height:22px;background:currentColor;-webkit-mask:url('/static/assets/arrow-left.svg') center/contain no-repeat;mask:url('/static/assets/arrow-left.svg') center/contain no-repeat;vertical-align:middle}
.store-page .product-quick{display:flex;align-items:center;justify-content:center;gap:10px;min-height:42px;line-height:1.5}
.store-page .product-quick .action-arrow{width:19px;height:19px;flex-basis:19px}
.btn:has(.action-arrow){gap:12px;line-height:1.6}
html[dir="ltr"] .action-arrow{transform:rotate(180deg)}
@media(max-width:520px){.btn:has(.action-arrow){gap:10px}.action-arrow{width:20px;height:20px;flex-basis:20px}}
