.promo-modal-backdrop{z-index:9999;-webkit-backdrop-filter:blur(8px);background:#041c18bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.promo-modal-container{background:#fff;border-radius:24px;width:100%;max-width:400px;animation:.3s ease-out promoFadeIn;position:relative;overflow:hidden;box-shadow:0 25px 60px -15px #0006,0 0 0 1px #ffffff1a}@keyframes promoFadeIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.promo-modal-close-btn{z-index:10;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;background:#00000073;border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex;position:absolute;top:14px;right:14px}.promo-modal-close-btn--no-image{color:#4b5563;background:#f3f4f6;border:1px solid #e5e7eb}.promo-modal-close-btn--no-image:hover{color:#111827;background:#e5e7eb}.promo-modal-close-btn:hover{background:#000000bf;transform:scale(1.08)}.promo-modal-image-wrapper{background:#06423a;width:100%;height:190px;position:relative;overflow:hidden}.promo-modal-image{object-fit:cover;width:100%;height:100%;transition:transform .6s;transform:scale(1.02)}.promo-modal-container:hover .promo-modal-image{transform:scale(1.06)}.promo-modal-image-overlay{background:linear-gradient(#06423a1a 0%,#06423ab3 100%);position:absolute;inset:0}.promo-modal-badge{color:#fff;font-family:var(--font-heading-regular);letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:.7rem;font-weight:700;display:inline-flex;position:absolute;bottom:14px;left:18px;box-shadow:0 4px 10px #d9770666}.promo-modal-badge--inline{margin-bottom:.85rem;position:static;box-shadow:0 2px 6px #d977064d}.promo-badge-icon{animation:2s ease-in-out infinite promoPulse}@keyframes promoPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.promo-modal-body{text-align:center;background:#fff;padding:1.5rem 1.75rem 1.75rem}.promo-modal-body--no-image{padding-top:2.25rem}.promo-modal-title{font-family:var(--font-heading-bold);letter-spacing:.02em;color:#06423a;margin:0 0 .5rem;font-size:1.25rem;font-weight:700;line-height:1.3}.promo-modal-title--standalone{margin-bottom:1.25rem}.promo-modal-desc{font-family:var(--font-editorial);color:#4b5563;margin:0 0 1.5rem;font-size:.95rem;line-height:1.6}.promo-modal-actions{flex-direction:column;gap:.625rem;display:flex}.promo-modal-cta-primary{color:#fff;width:100%;font-family:var(--font-heading-bold);letter-spacing:.03em;cursor:pointer;background:linear-gradient(135deg,#06423a 0%,#0c6a5e 100%);border:none;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:.925rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 8px 20px -4px #06423a59}.promo-modal-cta-primary:hover{background:linear-gradient(135deg,#0c6a5e 0%,#06423a 100%);transform:translateY(-1px);box-shadow:0 10px 24px -4px #06423a73}.promo-modal-cta-secondary{color:#4b5563;width:100%;font-family:var(--font-heading-regular);letter-spacing:.025em;cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:12px;padding:.65rem 1rem;font-size:.825rem;font-weight:600;transition:all .15s}.promo-modal-cta-secondary:hover{color:#111827;background:#f9fafb;border-color:#d1d5db}@media (max-width:480px){.promo-modal-container{max-width:92vw}.promo-modal-image-wrapper{height:160px}.promo-modal-body{padding:1.25rem 1.25rem 1.5rem}.promo-modal-body--no-image{padding-top:2rem}.promo-modal-title{font-size:1.1rem}.promo-modal-desc{margin-bottom:1.25rem;font-size:.8rem}}
@font-face{font-family:TrajanPro-Bold;src:url(/fonts/TrajanPro-Bold.otf)format("opentype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:TrajanPro-Regular;src:url(/fonts/TrajanPro-Regular.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Trajan Pro;src:url(/fonts/TrajanPro-Bold.otf)format("opentype");font-weight:600 900;font-style:normal;font-display:swap}@font-face{font-family:Trajan Pro;src:url(/fonts/TrajanPro-Regular.ttf)format("truetype");font-weight:100 500;font-style:normal;font-display:swap}:root{--primary-color:#06423a;--primary-light:#1a5c52;--secondary-color:#f5f5f5;--text-color:#1a1a1a;--text-muted:#6b7280;--bg-color:#fff;--card-bg:#fff;--shadow:0 4px 15px #00000014;--shadow-lg:0 8px 30px #0000001f;--border-radius:12px;--color-brand-green:#06423a;--color-brand-green-light:#1a5c52;--color-brand-bg:#f8f9fa;--color-brand-input-bg:#e8f0fe;--color-brand-orange:#e07b39;--font-heading-bold:"TrajanPro-Bold", "Trajan Pro", serif;--font-heading-regular:"TrajanPro-Regular", "Trajan Pro", serif;--font-body:"Calibri", "Inter", system-ui, sans-serif;--font-editorial:Georgia, Cambria, "Times New Roman", Times, serif;--font-data:"Inter", system-ui, -apple-system, sans-serif}*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#06423abf #e5e7ebd9;overflow-x:clip}html,body{margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;overscroll-behavior-y:auto;width:100%;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;overflow-x:clip}*{scrollbar-width:thin;scrollbar-color:#06423abf #e5e7ebd9}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#e5e7ebd9;border-radius:9999px}::-webkit-scrollbar-thumb{background:#06423ad9;border:2px solid #fffc;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#1a5c52f2}::-webkit-scrollbar-corner{background:0 0}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:inherit;color:inherit;background:0 0;border:none;outline:none;margin:0;padding:0}button,[role=button]{cursor:pointer;-webkit-user-select:none;user-select:none;background-color:#0000;background-image:none}button:disabled{cursor:not-allowed}img,svg,video,canvas,audio,iframe,embed,object{display:block}img,video{max-width:100%;height:auto}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}p{margin:0}@keyframes liquid-fill{0%{bottom:-100%}to{bottom:0%}}@keyframes wave-slide{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-left{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{will-change:opacity;animation:.6s cubic-bezier(.4,0,.2,1) forwards fadeIn}.animate-fade-up{will-change:opacity, transform;animation:.5s forwards fade-up}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.btn-spinner{vertical-align:middle;border:2px solid #ffffff59;border-top-color:currentColor;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite btn-spin;display:inline-block}@keyframes btn-spin{to{transform:rotate(360deg)}}button:active:not(:disabled){opacity:.95;transform:scale(.97)!important}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.product-card-skeleton .skeleton-image,.product-card-skeleton .skeleton-title,.product-card-skeleton .skeleton-text,.product-card-skeleton .skeleton-price,.product-card-skeleton .skeleton-button{background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 50%,#e5e7eb 75%) 0 0/200% 100%!important;animation:1.5s linear infinite skeleton-shimmer!important}@keyframes cart-pop-bounce{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.cart-bounce{animation:.3s cubic-bezier(.175,.885,.32,1.275) forwards cart-pop-bounce!important}
.customer-layout-root{background-color:#fff;flex-direction:column;width:100%;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex}.customer-layout-main{flex-grow:1}
