/* One mobile layout for all shared headers and shopping pages. */
@media (max-width:800px){
 .shared-header.nav .wrap{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px 44px;align-items:center;gap:4px;min-height:72px;padding:10px 16px}
 .shared-header.nav .logo,.shared-header.nav .brand{grid-column:1;grid-row:1;display:flex;min-width:0;gap:6px;font-size:16px;white-space:nowrap;margin:0}
 .shared-header.nav .brand-emblem{width:34px;height:38px;flex-basis:34px}
 .shared-header.nav .logo small{font-size:8px;letter-spacing:.18em}
 .shared-header.nav .header-basket{grid-column:2;grid-row:1;min-width:44px;width:44px;height:44px;padding:0}
 .shared-header.nav .header-basket svg{width:24px;height:24px}
 .shared-header.nav .header-basket .basket-count{right:0;top:0;min-width:18px;height:18px;font-size:10px}
 .shared-header.nav .menu{grid-column:4;grid-row:1;justify-self:stretch;margin:0;padding:0;font-size:12px;border-radius:6px;min-width:44px;height:44px}
 .shared-header.nav .site-search-button{grid-column:3;grid-row:1;justify-self:stretch;margin:0;padding:0;min-width:44px;height:44px;font-size:0;border-radius:6px}
 .shared-header.nav .site-search-button::before{content:'';display:block;width:22px;height:22px;margin:auto;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' d='M21 21l-6-6M17 10a7 7 0 1 1-14 0 7 7 0 0 1 14 0'/%3E%3C/svg%3E") center/contain no-repeat}
 .shared-header.nav .navlinks{grid-column:1/-1}
 .topbar,.strip{font-size:10px;line-height:1.5;letter-spacing:.08em;padding-top:6px;padding-bottom:6px}
 .topbar .wrap{padding-left:16px;padding-right:16px}
 .strip{padding-left:16px;padding-right:16px}
 .hero{min-height:0}
 .hero .wrap{padding:36px 18px}
 .hero h1{font-size:clamp(30px,8.2vw,42px);line-height:1.13;margin:12px 0 20px}
 .hero p:not(.eyebrow){font-size:16px;line-height:1.6;margin-bottom:24px}
 .hero .eyebrow{font-size:11px;line-height:1.6;letter-spacing:.12em;margin-bottom:12px}
 .shop .hero,.shop.checkout .hero{padding:0;min-height:0}
 .shop.checkout .hero .wrap{padding:26px 18px 28px}
 .shop.checkout .hero h1{font-size:32px;margin:8px 0 12px}
 .shop.checkout .hero p:not(.eyebrow){margin-bottom:18px}
 .shop.checkout .order{padding:24px 0 32px}
 .shop.checkout .basket-panel{margin:0 0 18px;padding:18px}
 .shop.checkout .basket-panel h2{font-size:24px}
 .hero .button.outline{border-color:#a6b5a7;color:white}
 body{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
 .shopping-tabs{min-height:68px;padding:5px 8px calc(5px + env(safe-area-inset-bottom,0px))}
 .shopping-tabs a{min-height:54px;font-size:11px}
 .shopping-tabs svg{width:22px;height:22px}
 .wa-float{position:static;display:flex;align-items:center;justify-content:center;width:fit-content;margin:16px 18px;min-height:44px;padding:10px 18px;font-size:14px}
}
@media(max-width:350px){.shared-header.nav .wrap{padding-left:10px;padding-right:10px;gap:2px}.shared-header.nav .logo,.shared-header.nav .brand{font-size:14px}.shared-header.nav .brand-emblem{width:28px;height:32px;flex-basis:28px}}

/* Consistent section rhythm without oversized gaps on small screens. */
@media(max-width:800px){
 .section:not(.group-details .section){padding-top:48px;padding-bottom:48px}
 .intro,.split{gap:28px}
 .hero-actions{gap:12px}
 .foot{padding-top:40px;padding-bottom:24px}
 .foot-grid{gap:28px}
 .foot-bottom{margin-top:28px;padding-top:18px}
}
