:root { --eg-copper:#a65336; --eg-soft-green:#e8eee9; --eg-radius:18px; }
html { scroll-behavior:smooth; }
.eg-shop-main { padding-top:0; }
.eg-shop-main > .eg-hero, .eg-shop-main > .eg-featured-categories, .eg-shop-main > .eg-shopping-steps, .eg-shop-main > .eg-section-heading { max-width:var(--wp--style--global--wide-size); }
.eg-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:44px; margin:32px auto 64px; }
.eg-hero-copy { padding-block:24px; }
.eg-eyebrow { color:var(--eg-copper); font-size:12px; font-weight:600; line-height:1.5; letter-spacing:0.08em; text-transform:uppercase; margin:0 0 20px; }
.eg-hero h1 { font-family:var(--wp--preset--font-family--heading); font-size:clamp(32px,3.7vw,51px); font-weight:400; line-height:1.2; margin:0 0 24px; letter-spacing:-0.02em; }
.eg-hero-lead { font-weight:500; max-width:38ch; font-size:18px; line-height:1.65; margin:0 0 28px; }
.eg-hero-actions { display:flex; flex-wrap:wrap; gap:14px 24px; align-items:center; }
.eg-primary-link { display:inline-flex; gap:24px; align-items:center; justify-content:center; min-height:50px; padding:13px 22px; background:var(--eg-teal); border:1px solid var(--eg-teal); border-radius:7px; color:white; text-decoration:none; font-family:var(--wp--preset--font-family--body); font-size:16px; font-weight:500; box-sizing:border-box; }
.eg-secondary-link { color:var(--eg-ink); text-decoration-thickness:1px; text-underline-offset:5px; font-size:15px; padding-block:12px; }
.eg-hero-note { font-size:18px; font-weight:500; line-height:1.65; color:var(--eg-ink); margin:24px 0 0; }
.eg-hero-visual { align-self:stretch; display:flex; flex-direction:column; min-width:0; }
.eg-hero-visual > p { margin:0; display:flex; justify-content:flex-end; }
.eg-hero-photo { flex:1; margin:0; position:relative; align-self:stretch; min-width:0; min-height:510px; overflow:hidden; border-radius:12px 90px 12px 12px; background:#e9dfcc; }
.eg-hero-photo img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:46% 50%; animation:eg-photo-drift 7s ease-in-out infinite alternate; animation-play-state:paused; }
.eg-hero-photo.eg-motion-running img { animation-play-state:running; }
.eg-section-heading { margin:56px auto 24px; scroll-margin-top:40px; }
.eg-section-heading .eg-eyebrow { margin-bottom:10px; }
.eg-section-heading h2 { margin:0; font-size:clamp(27px,3vw,38px); line-height:1.2; }
.eg-featured-categories { margin:0 auto 48px; }
.eg-category-art-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.eg-category-art { display:flex; flex-direction:column; padding:20px; background:#fffdf8; border:1px solid var(--eg-line); border-radius:var(--eg-radius); color:var(--eg-ink); text-decoration:none; }
.eg-category-art-image { display:block; aspect-ratio:1.35; overflow:hidden; }
.eg-category-art-image img { width:100%; height:100%; object-fit:contain; transition:transform 300ms ease; }
.eg-category-art-label { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:48px; font-size:17px; font-weight:600; line-height:1.4; padding-top:12px; }
.eg-category-art-label > span { color:var(--eg-copper); font-size:24px; font-weight:400; }
.eg-featured-categories .eg-category-menu { margin-top:22px; }
.eg-shopping-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; border-block:1px solid var(--eg-line); padding:22px 0; margin:40px auto; }
.eg-shopping-steps p { display:flex; align-items:center; gap:12px; margin:0; font-size:16px; font-weight:500; }
.eg-shopping-steps span { font-family:var(--wp--preset--font-family--heading); color:var(--eg-copper); font-size:22px; }
.eg-brand strong { font-weight:400; }
.eg-brand small { font-family:var(--wp--preset--font-family--body); }
.eg-mobile-menu, .eg-mobile-cart { display:none; }
.eg-header-tools { min-width:0; }
.eg-header-tools > p { margin:0; display:flex; align-items:stretch; }
.eg-shop-main ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.eg-shop-main > ul.products { max-width:var(--wp--style--global--wide-size); }
.eg-shop-main ul.products::before, .eg-shop-main ul.products::after { display:none; }
.eg-shop-main ul.products li.product { float:none; width:auto !important; margin:0 !important; display:flex; flex-direction:column; }
.eg-shop-main ul.products li.product .woocommerce-loop-product__link { display:flex; flex-direction:column; flex:1; }
.eg-shop-main ul.products li.product .woocommerce-loop-product__title { font-family:var(--wp--preset--font-family--body); font-size:17px; line-height:1.45; }
.eg-shop-main ul.products li.product .price { margin-top:auto; padding-top:12px; color:var(--eg-ink); font-size:17px; }
.eg-shop-main ul.products li.product .button { align-self:stretch; text-align:center; margin-top:16px; padding:12px 14px; min-height:46px; box-sizing:border-box; font-size:15px; line-height:1.4; }
.woocommerce-Price-currencySymbol { font-family:Arial,sans-serif; }
.eg-brand-guide { max-width:1100px; }
.eg-type-comparison { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-block:32px; }
.eg-type-pair { padding:28px; background:#fffdf8; border:1px solid var(--eg-line); border-radius:var(--eg-radius); }
.eg-type-pair h2 { font-family:var(--wp--preset--font-family--heading); font-size:36px; line-height:1.25; }
.eg-type-pair p { font-family:var(--wp--preset--font-family--body); line-height:1.6; }
.eg-type-pair-alternative h2 { font-family:var(--wp--preset--font-family--alternate-heading); font-weight:500; }
.eg-type-pair-alternative p, .eg-type-pair-alternative .eg-primary-link { font-family:var(--wp--preset--font-family--alternate-body); }
.eg-type-price { font-size:21px; font-weight:600; }
.eg-color-samples { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.eg-color-samples span { padding:32px 12px; text-align:center; border:1px solid var(--eg-line); border-radius:8px; font-size:14px; }
.eg-color-paper { background:var(--eg-paper); color:var(--eg-ink); }
.eg-color-ink { background:var(--eg-ink); color:white; }
.eg-color-teal { background:var(--eg-teal); color:white; }
.eg-color-copper { background:var(--eg-copper); color:white; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
 .eg-primary-link, .eg-nav a, .eg-categories a, .woocommerce a.button, .woocommerce button.button { transition:transform 180ms ease,background-color 180ms ease,box-shadow 180ms ease; }
 .eg-primary-link:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { transform:translateY(-2px); box-shadow:0 5px 12px #302b1d20; }
 .eg-category-art:hover .eg-category-art-image img { transform:scale(1.045) rotate(-1deg); }
 .eg-category-art:hover { border-color:var(--eg-copper); }
 .eg-categories a:hover { transform:translateY(-1px); }
}
@keyframes eg-photo-drift { from { transform:scale(1.04) translateX(-1.5%); } to { transform:scale(1.22) translateX(2.5%); } }
@media (hover:none) and (prefers-reduced-motion:no-preference) {
 .eg-category-art { transition:background-color 160ms ease,border-color 160ms ease; }
 .eg-category-art:active { background:#e8eee9; border-color:var(--eg-teal); }
 .eg-category-art:active .eg-category-art-image img { transform:scale(.96); }
 .eg-shop-main ul.products li.product img { transition:transform 160ms ease; }
 .eg-shop-main ul.products li.product:active img { transform:scale(.97); }
}
@media(min-width:701px) and (max-width:1000px) {
 .eg-category-art-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:700px) {
 .eg-store-header .eg-header-row { display:grid; grid-template-columns:minmax(0,1fr) 68px; align-items:center; gap:8px; position:relative; }
 .eg-store-header .eg-brand { display:grid; grid-template-columns:68px minmax(0,1fr); gap:8px; min-width:0; }
 .eg-store-header .eg-brand img { width:68px; height:68px; }
 .eg-store-header .eg-brand > span { text-align:center; min-width:0; }
 .eg-store-header .eg-brand strong { font-size:22px; line-height:1.25; }
 .eg-store-header .eg-brand small { font-size:13px; line-height:1.4; margin-top:4px; }
 .eg-store-header .eg-nav { display:none; }
 .eg-store-header .eg-wrap > .eg-category-menu { display:none; }
 .eg-mobile-menu { display:block; }
 .eg-mobile-menu > summary { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; min-height:68px; cursor:pointer; list-style:none; border:1px solid var(--eg-line); border-radius:10px; font-size:13px; font-weight:600; background:#fffdf8; }
 .eg-mobile-menu > summary::-webkit-details-marker { display:none; }
 .eg-menu-icon { display:block; width:23px; height:16px; border-block:2px solid currentColor; box-sizing:border-box; position:relative; }
 .eg-menu-icon::after { content:''; position:absolute; top:5px; left:0; width:23px; border-top:2px solid currentColor; }
 .eg-mobile-menu[open] > summary { background:var(--eg-teal); color:#fff; border-color:var(--eg-teal); }
 .eg-mobile-panel { position:absolute; top:calc(100% + 10px); left:0; right:0; z-index:30; max-height:70vh; max-height:70svh; overflow:auto; overscroll-behavior:contain; padding:18px; background:#fffdf8; border:1px solid var(--eg-line); border-radius:12px; box-shadow:0 12px 30px #302b1d24; }
 .eg-mobile-links { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
 .eg-mobile-links a { display:flex; align-items:center; min-height:44px; padding:8px; border-bottom:1px solid var(--eg-line); color:var(--eg-ink); font-size:16px; font-weight:500; text-decoration:none; }
 .eg-mobile-panel .eg-category-menu { margin-block:18px; }
 .eg-mobile-panel .eg-categories a { font-size:15px; overflow-wrap:anywhere; }
 .eg-menu-contact { font-size:16px; line-height:1.6; }
 .eg-menu-contact p { margin:8px 0; }
 .eg-menu-contact a { display:block; padding-block:10px; color:var(--eg-teal); font-weight:500; }
 .eg-menu-policy { display:block; padding-block:12px; color:var(--eg-teal); font-size:15px; }
 .eg-header-tools { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; margin-top:14px; align-items:stretch; }
 .eg-header-tools .eg-search { margin:0; }
 .eg-header-tools .eg-search input { padding:10px 8px; }
 .eg-header-tools .eg-search button { padding:10px 8px; font-size:14px; }
 .eg-mobile-cart { display:flex; align-items:center; justify-content:center; padding:8px 10px; border:1px solid var(--eg-teal); border-radius:6px; color:var(--eg-teal); font-size:14px; font-weight:500; text-decoration:none; }
 .eg-shop-main { padding-inline:12px; }
 .eg-quantity-help, .eg-payment-note, .eg-weight-guide p, .eg-product-purchase .wp-block-post-excerpt { font-size:16px; font-weight:500; color:var(--eg-ink); line-height:1.6; }
 .eg-nav > a:first-child { display:none; }
 .eg-shop-main ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .eg-shop-main ul.products li.product { padding:6px; }
 .eg-shop-main ul.products li.product .woocommerce-loop-product__title, .eg-shop-main ul.products li.product .price { padding-inline:4px; }
 .eg-shop-main ul.products li.product .woocommerce-loop-product__title { font-size:16px; font-weight:500; }
 .eg-shop-main ul.products li.product .price { font-size:15px; }
 .eg-shop-main ul.products li.product .button { font-size:13px; line-height:1.4; padding:12px 8px; }
 .eg-hero { grid-template-columns:1fr; gap:24px; margin:22px auto 40px; }
 .eg-hero-copy { padding:0; }
 .eg-hero h1 { font-size:28px; line-height:1.25; margin-bottom:16px; }
 .eg-hero-copy > .eg-eyebrow { display:none; }
 .eg-hero-lead { font-size:16px; margin-bottom:22px; }
 .eg-hero-visual { grid-row:1; }
 .eg-hero-photo { flex:none; width:100%; min-height:0; aspect-ratio:1.3; border-top-right-radius:40px; }
 .eg-hero-note { font-size:16px; margin-top:16px; }
 .eg-eyebrow { font-size:11px; margin-bottom:16px; }
 .eg-category-art-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .eg-category-art { padding:6px 8px 10px; border-radius:12px; }
 .eg-category-art-image { aspect-ratio:1; }
 .eg-category-art-label { font-size:16px; gap:4px; padding-top:4px; min-height:48px; overflow-wrap:anywhere; }
 .eg-category-art-label > span { display:none; }
 .eg-shopping-steps { grid-template-columns:1fr; gap:14px; margin-block:28px; }
 .eg-section-heading { margin-top:36px; }
 .eg-type-comparison { grid-template-columns:1fr; }
 .eg-type-pair { padding:22px; }
 .eg-type-pair h2 { font-size:30px; }
 .eg-color-samples { grid-template-columns:1fr 1fr; }
}
@media(max-width:380px) {
 .eg-store-header .eg-header-row { grid-template-columns:minmax(0,1fr) 60px; gap:6px; }
 .eg-store-header .eg-brand { grid-template-columns:60px minmax(0,1fr); gap:6px; }
 .eg-store-header .eg-brand img { width:60px; height:60px; }
 .eg-store-header .eg-brand strong { font-size:19px; }
 .eg-store-header .eg-brand small { font-size:12px; }
 .eg-mobile-menu > summary { min-height:60px; }
 .eg-category-art { padding:8px; }
 .eg-category-art-label { font-size:15px; overflow-wrap:anywhere; }
 .eg-category-art-label > span { display:none; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 .eg-hero-photo img { animation:none; }
 .eg-category-art-image img, .eg-primary-link, .eg-categories a, .eg-nav a { transition:none; transform:none; }
}
/* Optional owner announcement; absent markup reserves no space. */
.eg-announcement { margin:0 0 24px; padding:16px 20px; border:1px solid var(--eg-line); border-left:4px solid var(--eg-teal); border-radius:8px; background:#fffdf8; color:var(--eg-ink); overflow-wrap:anywhere; }
.eg-announcement p { margin:0; font-size:16px; line-height:1.6; }
.eg-announcement a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.eg-contact-details a, .eg-menu-contact a, .eg-footer a { overflow-wrap:anywhere; }
.eg-store-details { margin-block:40px; padding:24px; border:1px solid var(--eg-line); border-radius:12px; background:#fffdf8; overflow-wrap:anywhere; }
.eg-store-details h2 { margin-top:0; }
.eg-menu-contact p a[href*="google.com/maps/"] { display:inline; padding:0; }
.eg-info-page h2, .eg-contact-details h2, .eg-store-details h2 { font-size:clamp(24px,3vw,32px); line-height:1.3; }
@media(max-width:700px) { .eg-policy-page .wp-block-post-title { font-size:24px; line-height:1.3; } }

/* Photo selection: two complete cards on phones, three on wide screens. */
.eg-showcase { max-width:1200px; margin:52px auto; min-width:0; }
.eg-showcase-heading { display:flex; justify-content:space-between; align-items:end; gap:16px; }
.eg-showcase-heading .eg-eyebrow { margin-bottom:10px; }
.eg-showcase-heading h2 { margin:0; font-size:clamp(28px,3vw,38px); }
.eg-showcase-note { margin:12px 0 24px; font-size:14px; line-height:1.5; color:#625b4c; }
.eg-showcase-controls { display:flex; gap:8px; }
.eg-showcase-controls[hidden] { display:none; }
.eg-showcase-controls button { width:44px; height:44px; border:1px solid var(--eg-line); border-radius:50%; background:#fffdf8; color:var(--eg-teal); font-size:23px; cursor:pointer; }
.eg-showcase-controls button:hover { background:var(--eg-soft-green); border-color:var(--eg-teal); }
.eg-showcase-window { overflow-x:auto; scrollbar-width:none; scroll-snap-type:x mandatory; border-radius:16px; }
.eg-showcase-window::-webkit-scrollbar { display:none; }
.eg-showcase-window.eg-showcase-auto { scroll-snap-type:none; scroll-behavior:auto; }
.eg-showcase-window:focus-visible, .eg-showcase-controls button:focus-visible { outline:3px solid var(--eg-teal); outline-offset:3px; }
.eg-showcase-track { display:flex; gap:20px; position:relative; }
.eg-showcase-card { flex:0 0 calc((100% - 40px)/3); min-width:0; margin:0; scroll-snap-align:start; border:1px solid var(--eg-line); border-radius:16px; overflow:hidden; background:#fffdf8; box-sizing:border-box; }
.eg-showcase-image { position:relative; display:block; aspect-ratio:1; background:#fff; }
.eg-showcase-image img { width:100%; height:100%; object-fit:contain; display:block; }
.eg-showcase-card figcaption { padding:16px; font-size:18px; font-weight:500; line-height:1.35; }
.eg-showcase-card figcaption > a { color:inherit; text-decoration:none; }
.eg-showcase-price { margin-top:10px; font-size:16px; }
.woocommerce ul.products li.product .woocommerce-loop-product__link { display:block; position:relative; }
.eg-promotion-badge { position:absolute; top:10px; left:10px; z-index:2; display:block; max-width:calc(100% - 20px); box-sizing:border-box; margin:0; padding:7px 10px; border-radius:7px; background:var(--eg-teal); color:#fff; font-size:14px; font-weight:600; line-height:1.3; pointer-events:none; }
.eg-back-to-top { position:fixed; right:calc(16px + env(safe-area-inset-right)); bottom:calc(var(--eg-back-top-offset, 16px) + env(safe-area-inset-bottom)); z-index:90; display:grid; place-items:center; width:48px; height:48px; min-width:44px; min-height:44px; padding:0; border:1px solid #fff; border-radius:50%; color:#fff; background:var(--eg-teal); box-shadow:0 3px 12px #0003; cursor:pointer; }
.eg-back-to-top[hidden] { display:none; }
.eg-back-to-top:focus-visible { outline:3px solid var(--eg-copper, #a86136); outline-offset:3px; }
a.eg-product-whatsapp.button { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; box-sizing:border-box; max-width:100%; margin:14px 0 0; padding:12px 18px; background:var(--eg-teal); color:#fff; border-radius:7px; text-decoration:none; white-space:normal; line-height:1.35; }
.eg-product-whatsapp svg { flex-shrink:0; }
@media(max-width:700px) { .eg-promotion-badge { top:7px; left:7px; max-width:calc(100% - 14px); font-size:12px; padding:6px 8px; } }
.eg-icon { flex:none; display:block; }
.eg-contact-panel { display:grid; grid-template-columns:1.1fr 1fr; gap:36px 64px; box-sizing:border-box; max-width:1200px; margin:56px auto; padding:48px; background:var(--eg-teal); color:#fffdf8; border-radius:24px 72px 24px 24px; }
.eg-contact-panel .eg-eyebrow { color:#e6c79b; margin-bottom:18px; }
.eg-contact-panel h2 { font-size:clamp(30px,3.8vw,46px); line-height:1.18; color:inherit; margin:0 0 20px; font-weight:400; }
.eg-contact-intro > p:not(.eg-eyebrow) { font-size:16px; line-height:1.7; color:#e2ebe5; }
.eg-contact-panel h3 { font-family:var(--wp--preset--font-family--body); font-size:18px; font-weight:500; margin:0 0 18px; color:inherit; }
.eg-contact-panel a { color:inherit; }
.eg-contact-address { display:flex; align-items:start; gap:14px; margin-top:28px; }
.eg-contact-address > .eg-icon { margin-top:5px; }
.eg-contact-caption { display:block; font-size:13px; margin-bottom:5px; opacity:.85; }
.eg-contact-address a { display:block; width:fit-content; text-decoration:none; font-size:20px; }
.eg-contact-address small { display:block; margin-top:6px; font-size:13px; color:#e6c79b; }
.eg-phone-stack { display:grid; gap:12px; }
.eg-phone-button { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:60px; padding:12px 18px; border:1px solid var(--eg-line); border-radius:12px; text-decoration:none; font-size:21px; font-weight:500; font-variant-numeric:tabular-nums; box-sizing:border-box; }
.eg-contact-panel .eg-phone-button { background:#fffdf8; color:var(--eg-teal); border-color:#fffdf8; }
.eg-phone-button bdi { flex:1; white-space:nowrap; }
.eg-phone-button:hover { box-shadow:0 3px 12px #00000015; }
.eg-phone-button > span { font-size:20px; opacity:.65; }
.eg-email-row { display:flex; align-items:center; gap:14px; margin-top:20px; min-width:0; }
.eg-email-row a { overflow-wrap:anywhere; text-decoration:none; font-size:16px; }
.eg-email-row a:hover, .eg-contact-address a:hover { text-decoration:underline; text-underline-offset:4px; }
.eg-contact-hours { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:24px; border-top:1px solid #ffffff35; padding-top:28px; }
.eg-contact-hours > div { display:flex; align-items:start; gap:16px; }
.eg-contact-hours .eg-icon { color:#e6c79b; margin-top:4px; }
.eg-contact-hours p { margin:0; display:grid; gap:5px; }
.eg-contact-hours span { font-size:14px; color:#e2ebe5; }
.eg-contact-hours strong { font-size:22px; font-weight:500; letter-spacing:.02em; }
.eg-contact-hours small, .eg-contact-hours a { font-size:13px; }
.eg-contact-panel :focus-visible { outline:3px solid #e6c79b; outline-offset:4px; }
.eg-seller-line { font-size:14px; line-height:1.6; color:#625b4c; }
.eg-footer { background:#eee6d8; padding-top:42px; }
.eg-footer-grid { grid-template-columns:1fr .9fr 1.2fr; gap:40px; }
.eg-footer-brand > strong { font-family:var(--wp--preset--font-family--heading); font-size:26px; font-weight:400; }
.eg-footer-grid > div > strong { display:block; margin-bottom:14px; }
.eg-footer-address { display:flex; align-items:center; gap:10px; }
.eg-footer-address a { text-decoration:none; }
.eg-footer .eg-phone-button { font-size:18px; min-height:48px; padding:10px 14px; background:#f8f3e9; color:var(--eg-teal); }
.eg-footer .eg-icon { width:20px; height:20px; color:var(--eg-teal); }
.eg-footer .eg-email-row { gap:10px; margin-top:14px; }
.eg-footer-delivery { display:inline-block; font-size:14px; text-underline-offset:4px; }
@media(max-width:700px) {
 .eg-showcase { margin-block:36px; }
 .eg-showcase-track { gap:12px; }
 .eg-showcase-card { flex-basis:calc((100% - 12px)/2); border-radius:12px; }
 .eg-showcase-card figcaption { padding:12px 10px; font-size:15px; min-height:40px; }
 .eg-showcase-note { font-size:13px; margin-bottom:18px; }
 .eg-showcase-controls { gap:6px; }
 .eg-showcase-controls button { width:44px; height:44px; }
 .eg-contact-panel { grid-template-columns:minmax(0,1fr); gap:28px; padding:28px 22px; margin:36px auto; border-radius:18px 44px 18px 18px; }
 .eg-contact-panel h2 { font-size:32px; }
 .eg-contact-panel h3 { font-size:17px; margin-bottom:14px; }
 .eg-contact-hours { grid-template-columns:1fr 1fr; gap:16px; }
 .eg-contact-hours > div { flex-direction:column; gap:10px; }
 .eg-contact-hours strong { font-size:19px; }
 .eg-phone-button { min-height:56px; padding:12px 14px; font-size:20px; gap:10px; }
 .eg-footer-grid { grid-template-columns:1fr; gap:28px; }
 .eg-footer { padding-top:32px; }
}
@media(prefers-reduced-motion:reduce) { .eg-showcase-window { scroll-behavior:auto; } }
@media(max-width:380px) {
 .eg-contact-panel .eg-phone-button { font-size:18px; padding:10px; gap:8px; }
 .eg-contact-panel .eg-phone-button > span { display:none; }
 .eg-contact-panel .eg-email-row { gap:10px; }
 .eg-contact-panel .eg-email-row a { font-size:14px; }
 .eg-contact-hours { grid-template-columns:1fr; }
 .eg-contact-hours > div { flex-direction:row; }
 .eg-contact-hours strong { white-space:nowrap; }
}

.eg-order-cutoff { box-sizing:border-box; margin:20px auto 24px; padding:18px 22px; border-left:4px solid var(--eg-copper); border-radius:8px; background:#ede4d4; color:var(--eg-ink); max-width:1200px; }
.eg-order-cutoff strong { display:block; font-size:17px; line-height:1.5; }
.eg-order-cutoff span { display:block; margin-top:6px; font-size:14px; line-height:1.5; }
@media(max-width:700px) { .eg-order-cutoff { padding:14px 16px; } .eg-order-cutoff strong { font-size:16px; } }

/* Keep the WhatsApp mark inline in menu and policy contact links. */
a > .eg-icon:has(+ bdi) { display:inline-block; vertical-align:middle; }

.eg-footer-policies { display:flex; flex-wrap:wrap; gap:4px 24px; margin-top:24px; padding-top:16px; border-top:1px solid var(--eg-line); font-size:15px; }
.eg-footer-policies a { display:inline-flex; align-items:center; min-height:44px; color:var(--eg-teal); }

.eg-cart-toggle { position:fixed; left:calc(16px + env(safe-area-inset-left)); bottom:calc(16px + env(safe-area-inset-bottom)); z-index:90; display:grid; place-items:center; width:48px; height:48px; padding:0; border:1px solid #fff; border-radius:50%; color:#fff; background:var(--eg-teal); box-shadow:0 3px 12px #0003; cursor:pointer; }
.eg-cart-toggle:focus-visible,.eg-cart-close:focus-visible { outline:3px solid var(--eg-copper); outline-offset:3px; }
.eg-cart-count { position:absolute; top:-6px; right:-6px; display:grid; place-items:center; min-width:22px; height:22px; padding:0 3px; box-sizing:border-box; border:1px solid #fff; border-radius:12px; color:#fff; background:var(--eg-copper); font-size:12px; font-weight:700; line-height:1; }
.eg-cart-dialog { position:fixed; inset:0 auto 0 0; width:min(420px,100vw); max-width:100vw; height:100%; max-height:100%; margin:0; padding:0; box-sizing:border-box; border:0; color:var(--eg-ink); background:var(--eg-paper); }
.eg-cart-dialog::backdrop { background:#0006; }
.eg-cart-panel { min-height:100%; padding:20px max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left)); box-sizing:border-box; }
.eg-cart-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:20px; }
.eg-cart-heading h2 { margin:0; font-size:28px; }
.eg-cart-close { display:grid; place-items:center; width:48px; height:48px; flex-shrink:0; padding:0; border:1px solid var(--eg-line); border-radius:50%; color:var(--eg-ink); background:transparent; font-size:32px; cursor:pointer; }
.eg-cart-dialog ul.woocommerce-mini-cart { margin:0; padding:0; list-style:none; }
.eg-cart-dialog li.woocommerce-mini-cart-item { position:relative; min-height:72px; margin:0; padding:14px 0 14px 40px; border-bottom:1px solid var(--eg-line); overflow:auto; }
.eg-cart-dialog li.woocommerce-mini-cart-item a:not(.remove) { display:block; color:var(--eg-ink); font-weight:600; text-decoration:none; }
.eg-cart-dialog li.woocommerce-mini-cart-item img { float:right; width:64px; height:64px; margin:0 0 8px 12px; object-fit:contain; background:#fff; border-radius:8px; }
.eg-cart-dialog a.remove_from_cart_button { position:absolute; left:-8px; top:20px; display:grid; place-items:center; width:44px; height:44px; font-size:26px; text-decoration:none; }
.eg-cart-dialog .quantity,.eg-cart-dialog .variation { display:block; margin-top:8px; font-size:14px; }
.eg-cart-dialog .woocommerce-mini-cart__total { margin:20px 0; }
.eg-cart-dialog .woocommerce-mini-cart__buttons { display:flex; flex-wrap:wrap; gap:10px; }
.eg-cart-dialog .woocommerce-mini-cart__buttons .button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 14px; box-sizing:border-box; }
.eg-cart-estimate { margin-top:20px; font-size:14px; line-height:1.5; }
.eg-cart-open { overflow:hidden; }
.eg-cart-open .eg-back-to-top { visibility:hidden; }

.eg-cart-removing { opacity:.5; }
.eg-cart-error { padding:12px; border:1px solid var(--eg-copper); border-radius:8px; }

.eg-load-more { clear:both; margin:24px 0 40px; text-align:center; }
.eg-load-more[hidden],.eg-shop-main ul.products > li.product[hidden],.eg-shop-main .woocommerce-pagination[hidden],.eg-shop-main .woocommerce-result-count[hidden] { display:none!important; }
.eg-load-more-count { margin:0 0 12px; }
.eg-load-more-button { min-width:220px; min-height:48px; cursor:pointer; }
.eg-load-more-button[hidden] { display:none; }
.eg-load-more-button:disabled { opacity:.65; cursor:wait; }
.eg-load-more-error { margin:12px auto; max-width:36em; }
.eg-showcase-controls button[data-autoplay-toggle] { width:auto; min-width:84px; min-height:44px; padding:0 12px; border-radius:22px; font-size:14px; }
