.elementor .shop-footer-icon:hover,.elementor .shop-footer-icon:focus-visible{opacity:80%;}.elementor .shop-footer-icon{width:22px;height:22px;color:var(--shop-bg);display:block;}.elementor .shop-footer-social{display:flex;flex-direction:row;gap:16px;flex-wrap:wrap;justify-content:center;align-items:center;}.elementor .shop-footer-links{padding:0px;display:flex;flex-direction:row;gap:20px;flex-wrap:wrap;justify-content:center;}.elementor .shop-list-heading{font-family:var(--shop-font);font-weight:700;font-size:16px;color:var(--shop-primary);margin-block-start:8px;margin-block-end:0px;margin-inline-start:0px;margin-inline-end:0px;}.elementor .shop-card-title{font-family:var(--shop-font);font-weight:600;font-size:20px;color:var(--shop-primary);line-height:1.3;margin-block-start:8px;margin-block-end:0px;margin-inline-start:0px;margin-inline-end:0px;}.elementor .shop-footer-text{font-family:var(--shop-font);font-size:13px;color:var(--shop-border);line-height:1.6;margin:0px;}.elementor .shop-prose{max-width:760px;font-family:var(--shop-font);font-size:17px;color:var(--shop-text);line-height:1.75;padding:0px;}.elementor .shop-logo{width:auto;height:64px;transition:height 250ms;.is-scrolled & { height: 44px; }
@media (max-width: 767px) { .is-scrolled & { height: 38px; } }\n}.elementor .shop-header-bar{width:100%;padding:0px;border-block-start-width:0px;border-block-end-width:1px;border-inline-start-width:0px;border-inline-end-width:0px;border-color:var(--shop-border);border-style:solid;background-color:var(--shop-bg);box-shadow:0px 2px 12px 0px color-mix(in srgb, var(--shop-text) 4%, transparent);transition:box-shadow 250ms;.elementor-location-header:has(&) { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 100; }
.is-scrolled & { box-shadow: 0 4px 20px color-mix(in srgb, var(--shop-text) 8%, transparent); }\n}.elementor .shop-product-hero{width:100%;padding:0px;display:grid;gap:48px;grid-template-columns:minmax(0, 1fr) minmax(0, 3fr) minmax(0, 2fr);align-items:start;}.elementor .shop-page-title{font-family:var(--shop-font);font-weight:600;font-size:42px;color:var(--shop-primary);line-height:1.2;margin:0px;}.elementor .shop-header{width:100%;max-width:1200px;padding-block-start:12px;padding-block-end:12px;padding-inline-start:24px;padding-inline-end:24px;margin-block-start:0px;margin-block-end:0px;margin-inline-start:auto;margin-inline-end:auto;transition:padding 250ms;display:flex;flex-direction:row;gap:24px;justify-content:space-between;align-items:center;.is-scrolled & { padding-top: 4px; padding-bottom: 4px; }\n}.elementor .shop-brand{width:auto;text-decoration:none;padding:0px;display:flex;flex-direction:row;gap:14px;align-items:center;}.elementor .shop-card:hover,.elementor .shop-card:focus-visible{border-color:var(--shop-primary);box-shadow:0px 12px 28px 0px color-mix(in srgb, var(--shop-primary) 12%, transparent);}.elementor .shop-card{height:100%;text-align:center;text-decoration:none;padding-block-start:32px;padding-block-end:32px;padding-inline-start:24px;padding-inline-end:24px;border-radius:12px;border-width:1px;border-color:var(--shop-border);border-style:solid;background-color:var(--shop-bg);box-shadow:0px 2px 8px 0px color-mix(in srgb, var(--shop-text) 4%, transparent);transition:transform 200ms, box-shadow 200ms, border-color 200ms;display:flex;flex-direction:column;gap:12px;align-items:center;}.elementor .shop-product-media{padding:5px;border-radius:16px;background-color:var(--shop-bg);display:flex;justify-content:center;align-items:center;}.elementor .shop-price{font-family:var(--shop-font);font-weight:700;font-size:18px;color:var(--shop-text);margin:0px;}.elementor .shop-footer-link:hover,.elementor .shop-footer-link:focus-visible{text-decoration:underline;}.elementor .shop-footer-link{font-family:var(--shop-font);font-size:13px;color:var(--shop-bg);text-decoration:none;padding:0px;border-radius:0px;background-color:transparent;}.elementor .shop-card-subtitle{font-family:var(--shop-font);font-weight:400;font-size:15px;color:var(--shop-text-muted);line-height:1.5;margin:0px;&:empty { display: none; }\n}.elementor .shop-section-heading{font-family:var(--shop-font);font-weight:600;font-size:26px;color:var(--shop-primary);line-height:1.3;margin:0px;border-inline-start-width:4px;}.elementor .shop-button:hover,.elementor .shop-button:focus-visible{border-color:var(--shop-accent);background-color:var(--shop-accent);}.elementor .shop-button{font-family:var(--shop-font);font-weight:600;font-size:15px;color:var(--shop-bg);text-decoration:none;padding-block-start:12px;padding-block-end:12px;padding-inline-start:24px;padding-inline-end:24px;border-radius:8px;border-width:2px;border-color:var(--shop-primary);border-style:solid;background-color:var(--shop-primary);transition:background-color 200ms, border-color 200ms;}.elementor .shop-note{font-family:var(--shop-font);font-size:13px;color:var(--shop-text-muted);line-height:1.5;margin:0px;}.elementor .shop-product-summary{padding:0px;display:flex;flex-direction:column;gap:16px;}.elementor .shop-footer-bar{width:100%;padding:0px;background-color:var(--shop-primary);}.elementor .shop-section{width:100%;max-width:1200px;padding-block-start:24px;padding-block-end:48px;padding-inline-start:24px;padding-inline-end:24px;margin-block-start:0px;margin-block-end:0px;margin-inline-start:auto;margin-inline-end:auto;display:flex;flex-direction:column;gap:24px;}.elementor .shop-product-image{width:100%;height:auto;max-width:320px;}.elementor .shop-footer{width:100%;max-width:1200px;text-align:center;padding-block-start:28px;padding-block-end:36px;padding-inline-start:24px;padding-inline-end:24px;margin-block-start:0px;margin-block-end:0px;margin-inline-start:auto;margin-inline-end:auto;display:flex;flex-direction:column;gap:8px;align-items:center;}.elementor .shop-card-icon{width:140px;height:120px;object-fit:contain;}.elementor .shop-sticky{position:sticky;inset-block-start:120px;padding:0px;align-self:start;}.elementor .shop-buy-box{padding:32px;border-radius:16px;border-width:1px;border-color:var(--shop-border);border-style:solid;background-color:var(--shop-bg);display:flex;flex-direction:column;gap:12px;box-shadow: 2px 2px 0 0 color-mix(in srgb, var(--shop-text) 40%, transparent);
& > .shop-price { font-size: 32px; }
& > .shop-list-heading { margin: 0; }\n}.elementor .shop-carousel{overflow:auto;padding-block-start:16px;padding-block-end:40px;padding-inline-start:2px;padding-inline-end:2px;margin-block-start:-16px;margin-block-end:-28px;margin-inline-start:-2px;margin-inline-end:-2px;display:flex;flex-direction:row;gap:20px;scroll-snap-type: x mandatory;
& > * { flex: 0 0 calc((100% - 40px) / 3); scroll-snap-align: start; }
@media (max-width: 1024px) { & > * { flex-basis: calc((100% - 20px) / 2); } }
@media (max-width: 767px) { & > * { flex-basis: 85%; } }
scrollbar-width: none;
&::-webkit-scrollbar { display: none; }
/* The scroll box clips anything beyond its sides, the cards' hover shadow too:
   inside the row it falls downwards only (negative spread), and 2px (padding and
   margin settings, scroll-padding here) keep the first card's border edge clear
   of the clip. */
scroll-padding-inline: 2px;
& .shop-card:is(:hover, :focus-visible) { box-shadow: 0 14px 18px -10px color-mix(in srgb, var(--shop-primary) 18%, transparent); }\n}.elementor .shop-optional-section{display:flex;flex-direction:column;&:not(:has(.e-collection-loop-item)) { display: none; }\n}.elementor .shop-checklist{padding:0px;&:not(:has(li)) { display: none; }
& hr { height: 1px; margin: 8px 0 16px; border: 0; background-color: var(--shop-border); }
& .shop-checklist-intro { margin: 0 0 10px; font-family: var(--shop-font); font-size: 14px; font-weight: 700; color: var(--shop-text); }
& ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
& li { position: relative; min-height: 36px; padding: 7px 0 7px 52px; box-sizing: border-box; font-family: var(--shop-font); font-size: 15px; line-height: 1.5; color: var(--shop-text); }
& li::before { content: "\2713"; position: absolute; top: 50%; left: 0; transform: translateY(-50%); display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background-color: var(--shop-bg-tint); color: var(--shop-primary); font-size: 16px; font-weight: 700; }
& .shop-checklist-note { margin: 10px 0 0 52px; font-family: var(--shop-font); font-size: 14px; color: var(--shop-text-muted); }\n}.elementor .shop-note-strong{font-weight:600;color:var(--shop-primary);}.elementor .shop-section-intro{padding-block-end:16px;}