/* Mobile layout refinements; typography continues to use the shared scale. */
@media(max-width:700px){
  header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px 12px;padding:20px 6% 14px}
  header .logo{max-width:none;min-width:0;line-height:1.2}
  header .logo span{max-width:200px;line-height:1.5;letter-spacing:0;overflow-wrap:normal}
  header .head-actions{margin:0;gap:0;align-self:start}
  header .head-actions button{padding:8px;min-height:44px}
  header nav{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 10px;width:100%;padding:12px 0 0;border-top:1px solid var(--line);overflow:visible;white-space:normal}
  header nav a{display:flex;align-items:center;justify-content:center;min-height:44px;text-align:center;font-size:var(--text-small);line-height:1.4;padding:3px 0}
  .hero,.section,.wholesale,.services,.checkout-page,footer{min-width:0}
  .section-head>*,.listing-layout>*,.product-layout>*,.checkout-layout>*,.tier-row>div{min-width:0}
  .hero-copy p br,.section-head p br{display:none}
  .hero-copy p{max-width:34ch}
  .hero-actions{align-items:flex-start;gap:18px}
  .hero .btn{max-width:100%;justify-content:space-between;gap:18px}
  .catalog-tools{margin-top:20px}
  .tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 16px;overflow:visible;white-space:normal}
  .tabs button{padding:12px 0;line-height:1.4;text-align:left;min-height:46px}
  .search{margin-top:14px;padding:10px 0}
  .product h3{min-height:2.5em;line-height:1.25;text-wrap:balance}
  .product p{min-height:3.2em;line-height:1.6}
  .product .unit-price{line-height:1.6}
  .photo .badge{max-width:calc(100% - 16px);text-align:left;white-space:normal}
  .photo .quick{line-height:1.5}
  .product-bottom{margin-top:14px}
  .shop-sidebar{gap:12px 18px}
  .shop-sidebar a{min-height:38px;display:flex;align-items:center}
  .listing-controls>label{flex-basis:100%}
  .listing-controls select{flex:1;min-width:0}
  .directory-card h2{gap:8px;line-height:1.2;overflow-wrap:normal}
  .directory-card h2>span{flex-shrink:0}
  .tier-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:12px;align-items:start}
  .tier-row>span,.tier-row>strong{padding-top:4px}
  .tier-row h3{line-height:1.25}
  .tier-row h3 b{display:table;margin:10px 0}
  .tier-row>strong{white-space:nowrap}
  .tier-row p{line-height:1.7}
  .tier-top{gap:12px}
  .map-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
  .map-stats strong{line-height:1.25}
  .questions summary{gap:15px;align-items:flex-start}
  .questions summary:after{flex-shrink:0;line-height:1.5}
  .checkout-heading{flex-wrap:wrap;gap:12px 18px;align-items:center}
  .checkout-heading>a,.checkout-heading>span{white-space:nowrap}
  .checkout-section{margin-bottom:32px}
  .form-field{min-width:0}
  .form-field>span{line-height:1.5;min-height:1.5em}
  .order-panel h2{gap:15px;line-height:1.3}
  .order-panel h2>span{white-space:nowrap}
  .order-line{align-items:start;gap:10px}
  .order-line>div:not(.order-image){min-width:0}
  .order-line h3{overflow-wrap:normal}
  .order-line>strong{padding-top:5px;white-space:nowrap}
  .order-totals>div{gap:18px;line-height:1.6}
  .order-totals dt{flex-shrink:0}
  .order-totals dd{max-width:60%}
  .payment-option{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px 12px}
  .payment-option input{margin:0}
  .payment-option b{grid-column:2;margin:0;text-align:left}
  .shipping-choice{gap:10px;align-items:flex-start;padding:15px 12px}
  .shipping-choice>strong{white-space:nowrap}
  .shipping-choice input{margin:2px 0 0}
  .cart-row{display:grid;grid-template-columns:45px minmax(0,1fr);gap:12px;align-items:start}
  .cart-row .cart-info{min-width:0}
  .cart-row img{width:45px;height:65px}
  .cart-row .qty-control{grid-column:2;justify-self:start;gap:18px;margin-top:2px}
  .qty-control button{min-width:40px;min-height:40px}
  .cart-total{gap:20px;font-size:var(--text-title)}
  .cart-total strong{white-space:nowrap}
  .contact-strip>div{flex-wrap:wrap;gap:15px}
  .contact-shortcut{gap:12px;align-items:flex-start;min-height:64px}
  .contact-shortcut>svg,.contact-shortcut>span,.contact-shortcut>b{flex-shrink:0}
  .contact-shortcut small,.closing .fine{overflow-wrap:anywhere}
  .footer-main{row-gap:26px}
  .footer-main div{gap:4px}
  .footer-main div a,.footer-main div button{display:block;padding:10px 0;min-height:44px}
  .footer-bottom{padding-bottom:65px;gap:15px}
  .floating-contact{bottom:max(14px,env(safe-area-inset-bottom));right:14px}
  dialog{max-width:calc(100% - 24px);padding:40px 20px 24px}
  dialog .full{white-space:normal;text-align:left;line-height:1.5}
}
@media(max-width:360px){
  header nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}
  header .logo span{max-width:145px}
  .products,.listing .products,.directory-grid{grid-template-columns:minmax(0,1fr)}
  .product h3,.product p{min-height:0}
  .product .photo,.listing .photo{height:270px}
  .product .photo img{padding:24px}
  .product .photo img.chanel{padding:0}
  .product-bottom{align-items:center}
  .price small{display:inline}
  .directory-card>div{height:260px}
  .browse-grid{grid-template-columns:minmax(0,1fr);gap:8px}
  .browse-grid h3{margin:12px 0 8px}
  .tier-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}
  .tier-row>span{display:none}
  .form-row,.city-row{grid-template-columns:minmax(0,1fr);gap:0}
  .city-row>.form-field:first-child{grid-column:auto}
  .order-line{grid-template-columns:45px minmax(0,1fr)}
  .order-image{width:45px;height:65px}
  .order-line>strong{grid-column:2;padding-top:0;margin-top:-4px}
  .detail-buy{gap:8px}.detail-buy .qty{width:65px}.detail-buy .btn{gap:8px;padding-inline:12px}
}
