/* Mobile finishing: the desktop layout remains independent. */
.mobile-filter-toggle,.mobile-menu-close,.mobile-menu-links{display:none}
@media(max-width:650px){
  html{scroll-padding-top:16px}
  body{overflow-wrap:break-word}
  .announcement{padding:8px 12px;font-size:11px;line-height:18px;letter-spacing:.035em}
  header{padding:12px 16px 8px;gap:4px;min-height:0}
  .brand-logo{min-height:40px;gap:8px}
  .brand-logo .brand-name{font-size:22px}
  header .main-nav{right:16px;top:12px}
  .shop-picker summary{min-height:44px;padding:10px 4px;font-size:14px}
  .header-actions{gap:8px;align-items:center}
  .header-actions>.search-picker>summary,.header-actions>.wishlist-link,.bag-button,.currency-picker>summary{min-height:44px;display:flex;align-items:center;justify-content:center}
  .header-actions>.search-picker>summary,.header-actions>.wishlist-link{min-width:44px}
  .currency-picker>summary{justify-content:flex-start;font-size:12px;gap:6px}
  .bag-button{padding:0 2px;font-size:13px}
  .bag-button span{margin-left:7px}
  .product-controls button[data-product]{appearance:none;-webkit-appearance:none;background:var(--logo-pink);border-color:var(--logo-pink);color:var(--ink);-webkit-text-fill-color:var(--ink);font-weight:600;border-radius:5px}
  .product-controls button[data-product]:not(:disabled):active{background:#ef399b;border-color:#ef399b}
  .product-controls button[data-product]:disabled{background:var(--pink-soft);border-color:var(--line);color:var(--muted);-webkit-text-fill-color:var(--muted)}
  body.mobile-shop-open{overflow:hidden}
  .shop-panel{left:10px;right:10px;bottom:10px;max-height:none;padding:16px 18px 24px;border-radius:0 0 14px 14px;overscroll-behavior:contain;scrollbar-width:thin}
  .shop-panel-heading{display:grid;grid-template-columns:1fr auto 36px;gap:12px;padding-bottom:12px;margin-bottom:12px}
  .mobile-menu-close{display:grid;place-items:center;min-width:36px;min-height:44px;padding:0;border:0;background:transparent;color:var(--ink);font-size:26px}
  .mobile-menu-links{display:flex;flex-wrap:wrap;gap:4px 20px;padding-bottom:14px;margin-bottom:20px;border-bottom:1px solid var(--line)}
  .mobile-menu-links a{min-height:40px;padding:10px 0;font-size:13px}
  .shop-groups{gap:24px 16px}
  .shop-group{gap:2px;min-width:0}
  .shop-group a{font-size:13px;line-height:1.45;padding:10px 0;min-height:40px}
  .shop-group .shop-group-title{margin-bottom:2px;padding-top:0;min-height:32px}
  .hero{min-height:0;padding:28px 20px 32px;gap:22px;grid-template-columns:1fr}
  .hero-copy{padding:0;text-align:center}
  .hero .eyebrow{font-size:9px;letter-spacing:.16em;margin-bottom:14px}
  .hero h1{font-size:clamp(42px,12vw,54px);line-height:1.06;margin-bottom:16px}
  .hero h1 span{font-size:32px;margin-left:6px}
  .hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.65;margin:0 auto 20px;max-width:340px}
  .hero-copy>p br{display:initial}
  .hero .button{min-height:46px;padding:14px 26px;border-radius:6px}
  .hero-note{font-size:11px;margin-top:12px}
  .hero .hero-photo{min-height:0;height:340px;margin:0 4px;border-radius:150px 150px 8px 8px}
  .hero .round-stamp{width:82px;height:82px;right:-2px;top:18px;font-size:6px;outline-width:4px}
  .hero .round-stamp strong{font-size:16px;margin:5px 0}
  .hero .round-stamp span{font-size:16px}
  .hero .photo-label{left:16px;bottom:16px;font-size:16px;padding:8px 12px}
  .ribbon{padding:12px 0;gap:24px}
  .ribbon span{font-size:18px}
  .collection{padding:32px 18px 40px}
  h2{font-size:32px;line-height:1.15}
  .section-heading .eyebrow{font-size:10px;margin-bottom:10px}
  .preview-note{font-size:13px;line-height:1.6;margin:14px 0 20px}
  .collection-selection{font-size:11px;gap:12px;margin-top:16px}
  .mobile-filter-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:46px;padding:12px 14px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:var(--pink-soft);font-size:13px;text-align:left}
  .mobile-filter-toggle::after{content:'+';font-size:20px}
  .mobile-filter-toggle[aria-expanded=true]::after{content:'\2212'}
  .collection-tools{margin-top:14px;margin-bottom:24px;padding-top:0;border-top:0;gap:12px}
  .collection-tools:not(.mobile-filters-open)>label:not(.browse-search){display:none}
  .collection-tools input,.collection-tools select{font-size:16px;min-height:46px;min-width:0;border-radius:5px}
  .browse-summary{padding-bottom:4px;font-size:11px;gap:8px}
  .browse-summary button{min-height:40px}
  .catalog-section-grid,.collection-page:not(.product-page) .products:not(.is-sectioned){grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 12px}
  .collection-page:not(.product-page) .product-image{padding:10px;border-radius:7px}
  .collection-page:not(.product-page) .product-title{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:6px;min-height:78px;margin-top:12px}
  .collection-page:not(.product-page) .product-title h3{font-size:13px;line-height:1.45}
  .collection-page:not(.product-page) .product-title>span{font-size:13px}
  .collection-page:not(.product-page) .product>p{display:none}
  .collection-page:not(.product-page) .product-controls{gap:6px;padding-top:12px}
  .collection-page:not(.product-page) .product-controls select{width:100%;flex:1 1 100%;min-height:44px;padding:8px;font-size:16px}
  .collection-page:not(.product-page) .product-controls button[data-product]{width:100%;flex:1 1 100%;min-height:44px;padding:10px 8px;font-size:13px}
  .collection-page:not(.product-page) .size-guide-link{min-height:40px;font-size:13px;padding:9px 0}
  .wishlist-heart{min-width:38px;min-height:38px;top:8px;right:8px}
  .catalog-section{padding-top:26px}
  .catalog-section-heading{margin-bottom:18px}
  .catalog-subsection h4{font-size:23px;margin-bottom:16px}
  .catalog-jump-nav{gap:8px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}
  .catalog-jump-nav a{flex-shrink:0;min-height:40px;display:flex;align-items:center}
  .home-product-section{padding-top:28px}
  .home-product-heading{gap:12px;margin-bottom:18px}
  .home-product-heading h3{font-size:27px}
  .home-product-heading>a{font-size:12px;min-height:40px;display:flex;align-items:center}
  .home-preview-grid,.best-sellers-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;gap:14px;scroll-snap-type:x mandatory;scroll-padding-left:0;padding:2px 18px 14px 0;margin-right:-18px;overscroll-behavior-x:contain}
  .home-preview-grid>.product,.best-sellers-grid>.best-seller-card{scroll-snap-align:start;min-width:0}
  .home-preview-grid .product-title{display:block;min-height:74px}
  .home-preview-grid .product-title h3{font-size:14px}
  .home-preview-grid .product-title>span{display:block;font-size:13px;margin-top:6px}
  .home-preview-grid .product-controls select,.home-preview-grid .product-controls button[data-product]{min-height:44px}
  .best-sellers{padding:0 18px 36px}
  .best-sellers-heading{padding-top:26px}
  .product-detail{padding:22px 18px 34px}
  .product-detail .product{gap:16px}
  .product-detail h1{font-size:32px;line-height:1.12;margin-bottom:12px}
  .product-detail .product-title>span{font-size:19px}
  .product-detail .product>p:not(.product-detail-note){font-size:14px;line-height:1.7}
  .product-detail .product-controls select{font-size:16px;min-height:48px}
  .product-detail .product-controls button[data-product]{min-height:48px;border-radius:5px}
  .product-thumbnails{gap:8px;padding-bottom:4px}
  .gallery-arrow{width:40px;height:40px}
  .gallery-prev{left:10px}.gallery-next{right:10px}
  #bag .bag-header,#bag .bag-bottom{padding:18px}
  #bag .bag-bottom{padding-bottom:max(18px,env(safe-area-inset-bottom))}
  #bag .bag-item{gap:12px;padding:18px 0}
  #bag .bag-item button{min-height:40px;min-width:40px}
  #bag h2{font-size:27px}
  footer{padding:30px 18px}
  .footer-links{gap:24px 18px}
  .footer-links a,.footer-links button{min-height:40px;display:flex;align-items:center}
  .cookie-banner{padding:16px;gap:12px;font-size:13px;border-radius:12px}
  .cookie-actions button{min-height:44px;padding:10px;font-size:13px}
}
