/* Mobile refinements only. Desktop styling remains in style.css. */
.cart-toast{position:fixed;z-index:45;right:1rem;bottom:1rem;max-width:430px;padding:1rem 1.15rem;border-top:4px solid var(--aqua);background:#fff;color:var(--navy);box-shadow:var(--shadow)}
.cart-toast .text-link{margin-left:.25rem}
.cart-item__placeholder{display:grid;place-items:center;width:72px;height:72px;padding:.35rem;background:var(--mist);color:var(--muted);font-size:.67rem;line-height:1.15;text-align:center}

@media (max-width:900px){
  html{scroll-padding-top:76px}
  .site-header{position:sticky;top:0}
  .header-main{position:relative;grid-template-columns:minmax(96px,125px) minmax(0,1fr) 44px;grid-template-areas:"brand actions menu";column-gap:.3rem;min-height:68px}
  .site-branding{grid-area:brand;min-width:0}
  .site-branding .custom-logo-link,.site-branding .brand-link{max-width:125px}
  .site-branding .custom-logo,.site-branding .brand-link img{max-width:125px;max-height:42px}
  .header-actions{grid-area:actions;justify-self:end;min-width:0;gap:.1rem}
  .menu-toggle{grid-area:menu}
  .search-toggle,.menu-toggle,.cart-link{min-width:44px;min-height:44px}
  .cart-link{gap:.28rem;padding-left:.38rem;font-size:.86rem}
  .cart-link span:first-child{display:inline}
  .primary-nav{top:100%;max-height:calc(100dvh - 68px);overflow-y:auto;overscroll-behavior:contain;padding: .65rem max(20px, env(safe-area-inset-right)) .9rem max(20px, env(safe-area-inset-left))}
  .primary-nav ul{gap:0}
  .primary-nav a{display:flex;align-items:center;min-height:44px;padding:.55rem 0}
  .header-search .sb-wrap{width:min(100% - 28px,1200px)}
  .search-form{align-items:stretch}
  .search-form input{min-height:46px;font-size:16px}
  .search-form .button{min-height:46px}

  .site-main,.catalog-layout,.product-single,.product-gallery,.quote-layout{min-width:0}
  .catalog-filter{display:block;overflow-x:auto;padding:.85rem;border:1px solid var(--line);-webkit-overflow-scrolling:touch}
  .catalog-filter h2{font-size:1.3rem;line-height:1;margin:0 0 .7rem}
  .catalog-filter ul{display:flex;gap:.5rem;width:max-content;min-width:100%;margin:0;padding:0}
  .catalog-filter li{flex:0 0 auto;border:0}
  .catalog-filter a{display:flex;align-items:center;min-height:44px;padding:.4rem .75rem;border:1px solid var(--line);background:#fff;white-space:nowrap}

  .category-card,.category-card:first-child{grid-column:span 6;min-height:180px}
  .category-card:first-child{grid-column:1/-1;min-height:220px}
  .category-card:not(.category-card--plain){color:#fff}
  .category-card:not(.category-card--plain)::after{background:linear-gradient(0deg,rgba(6,28,56,.88),rgba(6,28,56,.08) 76%)}

  .product-gallery{min-width:0}
  .product-thumbs{display:flex;flex-wrap:nowrap;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding:0 0 .45rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
  .product-thumb{flex:0 0 68px;width:68px;height:68px;scroll-snap-align:start}
  .product-summary h1,.content-area h1,.page-hero h1{font-size:clamp(2rem,8.5vw,2.5rem);line-height:.98;overflow-wrap:anywhere}
  .product-summary,.product-content,.cart-item__name,.product-card__title{overflow-wrap:anywhere}
  .choice-options button{min-height:44px;padding:.5rem .75rem;font-size:16px}
  .quantity-control{width:max-content;max-width:100%}
  .quantity-control button{width:44px;height:46px}
  .quantity-control input{width:48px;min-height:46px;font-size:16px}
  .product-price{min-width:0}
  .product-price strong,.product-price__anchor{overflow-wrap:anywhere}
  .product-add{align-items:stretch}
  .product-add .button{width:100%}

  .form-row input,.form-row textarea,.cart-quantity input{min-height:48px;font-size:16px}
  .form-card{padding:1.15rem}
  .cart-item{grid-template-columns:64px minmax(0,1fr);align-items:start;gap:.75rem}
  .cart-item img,.cart-item__placeholder{width:64px;height:64px}
  .cart-item__placeholder{display:grid;place-items:center;padding:.35rem;background:var(--mist);color:var(--muted);font-size:.67rem;line-height:1.15;text-align:center}
  .cart-actions{grid-column:2;display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-top:.15rem}
  .cart-quantity input{width:56px;padding:.35rem;text-align:center}
  .cart-actions .inline-button{min-height:44px;padding:.45rem .2rem}

  .footer-legal{flex-direction:row;align-items:center;gap:.6rem 1rem}
  .footer-legal>*{flex:0 0 auto}
  .logo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
  .logo-card{min-width:0;min-height:70px}
  .cookie-banner{right:12px;bottom:max(12px, env(safe-area-inset-bottom));width:calc(100% - 24px);max-width:430px;max-height:40vh;overflow-y:auto;padding:1rem}
  .cookie-banner .cookie-actions .button{min-height:44px}
  .cart-toast{right:12px;bottom:max(12px, env(safe-area-inset-bottom));left:12px;max-width:none;max-height:35vh;overflow-y:auto}
}

@media (max-width:620px){
  .sb-wrap{width:min(100% - 28px,1200px)}
  .section{padding:2.75rem 0}
  .page-hero{padding:2.6rem 0 2.2rem}
  .product-single{padding-top:1.5rem;gap:1.5rem}
  .product-gallery__main img{padding:1rem}
  .product-card__content{padding:.8rem}
  .product-card__title{font-size:1.12rem;line-height:1.15;margin:.35rem 0 .8rem}
  .product-card__actions .button{min-height:44px}
  .product-add{flex-direction:column}
  .form-grid{gap:.8rem}
  .footer-main{gap:1.75rem}
  .footer-legal{padding:1rem 0}
}

@media (max-width:359px){
  .header-main{grid-template-columns:96px minmax(0,1fr) 44px}
  .site-branding .custom-logo-link,.site-branding .brand-link,.site-branding .custom-logo,.site-branding .brand-link img{max-width:96px}
  .cart-link{font-size:.76rem}
  .product-grid{grid-template-columns:1fr}
  .category-card,.category-card:first-child{grid-column:1/-1}
  .cart-item{grid-template-columns:56px minmax(0,1fr)}
  .cart-item img,.cart-item__placeholder{width:56px;height:56px}
}
