/* ---- Mobile and touch ----
   Loaded last so it can correct anything the page level sheets set. */

/* 1. iOS zooms the whole page when a focused input is under 16px. */
@media (max-width:820px){
  input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search],input[type=password],textarea,select,
  .sol-field,.sol-qty input,.sol-plp__sort select,
  .wc-block-components-text-input input,.wc-block-components-textarea,.wc-blocks-components-select__select{font-size:16px !important}
}

/* 2. Hit areas reach 44px without changing how anything looks. */
@media (pointer:coarse){
  .sol-tool{width:44px;height:44px}
  .sol-reel__ig,.sol-reels__arrow{width:44px;height:44px}
  .sol-swatch,.sol-dot,.sol-fswatch,.sol-optSwatch{position:relative}
  .sol-swatch::after,.sol-fswatch::after,.sol-optSwatch::after{content:'';position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%)}
  .sol-size,.sol-optChip{min-height:44px;padding-inline:14px}
  .sol-qty button{width:44px;height:44px}
  .sol-plp__sort select{min-height:44px}
  .sol-card__add,.sol-plp__filterBtn{min-height:44px}
  .sol-drawer__nav>li>a{padding-block:18px}
  .sol-fopt{padding-block:11px}
  .sol-cart-item__remove-link,.wc-block-cart-item__remove-link{display:inline-block;padding-block:8px}
}

/* 3. Notched phones: keep fixed furniture clear of the home indicator. */
.sol-sticky{padding-bottom:calc(11px + env(safe-area-inset-bottom))}
.sol-drawer__panel{padding-bottom:calc(var(--sol-space-xl) + env(safe-area-inset-bottom))}
.sol-plp__sidePanel{padding-bottom:calc(var(--sol-space-lg) + env(safe-area-inset-bottom))}
.sol-foot{padding-bottom:calc(var(--sol-space-lg) + env(safe-area-inset-bottom))}
.sol-wrap{padding-left:max(var(--sol-gutter),env(safe-area-inset-left));padding-right:max(var(--sol-gutter),env(safe-area-inset-right))}

/* 4. Remove the grey flash on tap, keep a real focus ring for keyboards. */
a,button,input,select,textarea,[role=button]{-webkit-tap-highlight-color:transparent}

/* 5. Anything revealed on hover must be permanently visible without a pointer. */
@media (hover:none){
  .sol-card__sizes{opacity:1 !important;transform:none !important}
  .sol-card__media{transform:none !important}
  .sol-subnav{position:static;opacity:1;visibility:visible;transform:none}
  .sol-reel:hover{transform:none}
}

/* 6. Nothing may push the page sideways. */
html,body{max-width:100%;overflow-x:clip}
img,video,iframe,svg,table{max-width:100%}

/* 7. Type and spacing tuned for a phone rather than scaled down from desktop. */
@media (max-width:620px){
  .sol-card__name{font-size:13.5px;-webkit-line-clamp:2}
  .sol-card__fabric{font-size:10px;letter-spacing:.1em}
  .sol-card__price{font-size:14px}
  .sol-card__blouse{font-size:11.5px}
  .sol-grid{gap:var(--sol-space-lg) 10px}
  .sol-lede{font-size:15px}
  .sol-plp__bar{flex-wrap:wrap;gap:10px}
  .sol-plp__count{order:3;width:100%}
  .sol-buy__actions{flex-wrap:wrap}
  .sol-buy__add{flex:1 1 100%;order:3;margin-top:10px}
  .sol-secHead{gap:10px}
}

/* 8. Momentum scrolling on the horizontal rails. */
.sol-reels__rail,.sol-gal__thumbs,.sol-fgroup__body{-webkit-overflow-scrolling:touch}
