/* Final mobile adaptation — iPhone / small screens */
@media (max-width: 780px){
  html,body{max-width:100%;overflow-x:hidden!important}
  .wrap{width:calc(100% - 28px)!important;max-width:none!important}

  /* Header */
  .site-header{position:relative!important}
  .site-header .topbar{
    height:auto!important;
    min-height:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto auto!important;
    gap:10px 12px!important;
    padding-top:11px!important;
    padding-bottom:11px!important;
    align-items:center!important;
  }
  .site-header .brand{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    gap:7px!important;
  }
  .site-header .gear{font-size:29px!important;line-height:1!important}
  .site-header .brand strong{font-size:16px!important;letter-spacing:-.02em!important}
  .site-header .brand small{font-size:7px!important;letter-spacing:.08em!important;margin-top:3px!important}
  .site-header .head-icons{
    grid-column:2!important;
    grid-row:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    min-width:0!important;
  }
  .site-header .head-icons>a{font-size:19px!important;min-width:42px!important}
  .site-header .head-icons small{font-size:7px!important}
  .site-header .head-icons>a[href*="cart"]{min-width:42px!important}
  .site-header .head-icons>a[href*="cart"]::before{font-size:20px!important}
  .site-header .contact{display:none!important}
  .site-header .search{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
    max-width:none!important;
    height:44px!important;
    margin:0!important;
  }
  .site-header .search input{font-size:16px!important;padding:0 12px!important}
  .site-header .search button{width:48px!important;flex:0 0 48px!important}
  .site-header .header-quicklinks{
    grid-column:1/-1!important;
    grid-row:3!important;
    display:flex!important;
    gap:7px!important;
    width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    padding-bottom:1px!important;
  }
  .site-header .header-quicklinks::-webkit-scrollbar{display:none!important}
  .site-header .header-quicklinks a{
    display:flex!important;
    flex:0 0 auto!important;
    min-width:max-content!important;
    height:38px!important;
    padding:0 12px!important;
    font-size:9px!important;
    white-space:nowrap!important;
  }
  .site-header>.nav{display:none!important}

  /* Home hero */
  body.home .hero{min-height:0!important;height:auto!important;max-height:none!important;padding:0!important;background-size:cover!important;background-position:64% center!important}
  body.home .hero .hero-grid{
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    display:block!important;
    padding-top:30px!important;
    padding-bottom:24px!important;
    background:linear-gradient(90deg,rgba(3,5,6,.96) 0%,rgba(3,5,6,.88) 52%,rgba(3,5,6,.58) 78%,rgba(3,5,6,.36) 100%)!important;
  }
  body.home .hero .hero-grid>div:first-child{max-width:100%!important}
  body.home .hero .eyebrow{font-size:7px!important;line-height:1.35!important;padding:6px 8px!important;max-width:92%!important}
  body.home .hero h1{
    margin:15px 0 12px!important;
    font-size:36px!important;
    line-height:.96!important;
    letter-spacing:-1.2px!important;
  }
  body.home .hero p{font-size:14px!important;line-height:1.35!important;margin:0!important}
  body.home .hero-art{display:none!important}
  body.home .benefits,
  body.home .hero-benefits-final{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:8px!important;
    margin-top:22px!important;
    overflow:visible!important;
  }
  body.home .hero-benefit{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    flex:none!important;
    padding:9px!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
  }
  body.home .hero-benefit img{width:38px!important;height:38px!important;flex:0 0 38px!important}
  body.home .hero-benefit b{font-size:9px!important;line-height:1.15!important}
  body.home .hero-benefit small{font-size:7px!important;line-height:1.25!important;margin-top:3px!important}

  /* ticker */
  .rm-ticker{overflow:hidden!important}
  .rm-ticker-track{font-size:8px!important}

  /* Brand chooser */
  .home .brands{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    overflow:visible!important;
    margin-top:16px!important;
    margin-bottom:20px!important;
    padding-bottom:0!important;
  }
  .home .brands .section-title{
    grid-column:1/-1!important;
    padding:0 0 5px!important;
  }
  .home .brands .section-title h2{font-size:21px!important;line-height:1!important}
  .home .brands .section-title p{font-size:9px!important;margin-top:5px!important}
  .home .brand-card.photo-brand{
    width:100%!important;
    height:104px!important;
    scroll-snap-align:none!important;
  }
  .home .brand-card.photo-brand b{left:11px!important;bottom:27px!important;font-size:14px!important}
  .home .brand-card.photo-brand small{left:11px!important;bottom:9px!important;font-size:8px!important}

  /* Home sections */
  .home .section{margin-top:20px!important;padding-bottom:10px!important}
  .home .section-head{gap:10px!important;align-items:center!important}
  .home .section-head h2{font-size:18px!important;padding-left:11px!important}
  .home .section-head a{font-size:9px!important;white-space:nowrap!important}
  .home .cats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .home .cat-photo{
    min-height:112px!important;
    padding:14px 44% 13px 13px!important;
  }
  .home .cat-photo b{font-size:10px!important;margin-top:10px!important}
  .home .cat-photo small{font-size:8px!important}
  .home .cat-photo em{left:13px!important;bottom:8px!important;font-size:18px!important}
  .home .cat-photo .cat-img{width:48%!important}
  .home .cat-photo .cat-img img{height:105%!important}

  .home .rm-products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .home .rm-product{min-height:0!important}
  .home .rm-product-img{height:130px!important;padding:6px!important}
  .home .rm-product-body{padding:9px!important}
  .home .rm-product-title{min-height:48px!important;font-size:9px!important;line-height:1.3!important}
  .home .rm-product-price{font-size:14px!important;margin:6px 0 8px!important}
  .home .rm-product-btn{min-height:36px!important;font-size:8px!important;padding:8px 5px!important}

  .home .support-card{min-height:0!important}
  .home .support-card>div{display:block!important;padding:18px!important;min-height:0!important}
  .home .support-card h2{font-size:23px!important;line-height:1!important;margin:5px 0 12px!important}
  .home .support-card li{font-size:9px!important;margin:7px 0!important}
  .home .support-card>div>a{width:100%!important;margin-top:13px!important}
  .home .support-card p{font-size:8px!important;line-height:1.6!important;text-align:left!important}
  .home .support-card:before{right:-25%!important;width:85%!important;opacity:.09!important}
  .home .trust-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1px!important}
  .home .trust-grid>div{min-width:0!important;padding:14px 10px!important}
  .home .trust-grid b{font-size:9px!important}
  .home .trust-grid small{font-size:7px!important}

  /* Catalog / category / brand archives */
  .rm-catalog-hero{min-height:0!important;padding:24px 0 22px!important}
  .rm-catalog-hero h1{font-size:28px!important;line-height:1!important;margin:7px 0 9px!important}
  .rm-catalog-hero p{font-size:10px!important;line-height:1.45!important}
  .rm-catalog-search{display:grid!important;grid-template-columns:minmax(0,1fr) 54px!important;width:100%!important;margin-top:13px!important}
  .rm-catalog-search input{min-width:0!important;width:100%!important;font-size:16px!important;padding:11px!important}
  .rm-catalog-search button{padding:0!important;font-size:0!important}
  .rm-catalog-search button:after{content:"⌕";font-size:20px!important}

  .rm-shop-layout{
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
    padding-top:14px!important;
    padding-bottom:30px!important;
  }
  .rm-shop-main{order:1!important;width:100%!important;min-width:0!important}
  .rm-sidebar{order:2!important;position:static!important;width:100%!important}
  .rm-catalog-chooser{padding:14px!important;margin-bottom:18px!important}
  .rm-catalog-section-head,.rm-products-heading{display:block!important;margin-bottom:13px!important}
  .rm-catalog-section-head h2,.rm-products-heading h2{font-size:20px!important}
  .rm-catalog-section-head p,.rm-products-heading p{margin-top:7px!important;font-size:10px!important}
  .rm-category-tiles{grid-template-columns:1fr!important;gap:8px!important}
  .rm-category-tiles a{min-height:102px!important;padding:15px 43% 14px 14px!important}
  .rm-category-tiles strong{font-size:11px!important}
  .rm-category-tiles small{font-size:8px!important}
  .rm-category-tiles img{width:46%!important;height:108%!important;bottom:-8%!important}

  .rm-shop-toolbar{
    min-height:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    padding:9px!important;
    margin-bottom:10px!important;
  }
  .rm-shop-toolbar .woocommerce-result-count,
  .rm-shop-toolbar .woocommerce-ordering{float:none!important;width:100%!important;margin:0!important}
  .rm-shop-toolbar select{width:100%!important;max-width:100%!important;font-size:12px!important}

  .rm-shop-main ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .rm-shop-main ul.products li.product{min-width:0!important;padding:6px!important}
  .rm-shop-main li.product img{height:120px!important;padding:3px!important;margin-bottom:6px!important}
  .rm-shop-main ul.products li.product .woocommerce-loop-product__title{
    min-height:46px!important;
    font-size:9px!important;
    line-height:1.28!important;
    padding:3px!important;
  }
  .rm-catalog-page .rm-shop-main ul.products li.product .price{font-size:14px!important;margin:6px 0 2px!important}
  .rm-shop-main li.product .button,.rm-shop-main li.product a.button{
    min-height:35px!important;
    padding:8px 4px!important;
    font-size:8px!important;
    letter-spacing:0!important;
  }
  .rm-shop-main li.product .yith-wcqv-button{display:none!important}

  .rm-side-title{font-size:11px!important;padding:12px!important}
  .rm-side-cats a{font-size:10px!important;padding:10px 12px!important}
  .rm-side-help{padding:15px 12px!important}

  .rm-seo-note{margin-top:20px!important;padding:18px 16px!important}
  .rm-seo-note h2{font-size:20px!important}
  .rm-seo-note__text{font-size:12px!important;line-height:1.6!important}
  .rm-seo-note__links{gap:6px!important}
  .rm-seo-note__links a{font-size:9px!important;min-height:30px!important;padding:6px 8px!important}

  /* Single product */
  .rm-product-hero{padding:18px 0!important}
  .rm-product-hero h1{font-size:22px!important;line-height:1.05!important}
  .product-page{padding-top:12px!important;padding-bottom:30px!important}
  .rm-product-meta-bar{display:grid!important;grid-template-columns:1fr 1fr!important;margin-bottom:12px!important}
  .rm-product-meta-bar>div{padding:9px 10px!important;min-width:0!important}
  .rm-product-meta-bar>a{grid-column:1/-1!important;margin:0!important;min-height:40px!important;justify-content:center!important}
  .rm-single-page div.product{padding:10px!important}
  .rm-single-page div.product .woocommerce-product-gallery,
  .rm-single-page div.product .summary,
  .woocommerce div.product div.images,
  .woocommerce-page div.product div.images,
  .woocommerce div.product div.summary,
  .woocommerce-page div.product div.summary{
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .rm-single-page div.product .summary{padding:12px 2px 2px!important}
  .rm-single-page div.product .product_title{font-size:22px!important;line-height:1.12!important}
  .rm-single-page div.product .price{font-size:22px!important}
  .rm-price-check{display:block!important;padding:14px!important}
  .rm-price-check-phones{margin-top:10px!important;width:100%!important}
  .rm-price-check-phones a{display:block!important;width:100%!important;margin-top:6px!important}
  .rm-product-order-info{grid-template-columns:1fr!important}
  .rm-order-actions{grid-column:1!important;display:grid!important;grid-template-columns:1fr!important}
  .rm-single-page .woocommerce-tabs ul.tabs{display:flex!important;overflow-x:auto!important;padding:0!important}
  .rm-single-page .woocommerce-tabs ul.tabs li{flex:0 0 auto!important;margin:0 5px 0 0!important}
  .rm-single-page .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .rm-product-contact{display:block!important;padding:18px!important}
  .rm-product-contact h2{font-size:22px!important}
  .rm-product-contact-actions{min-width:0!important;width:100%!important;margin-top:14px!important}

  /* Footer / generic pages */
  .foot{display:block!important;min-height:0!important;padding:22px 0!important}
  .foot>*{display:block!important;margin:8px 0!important}
  .content-page{padding-top:22px!important;padding-bottom:35px!important;overflow-wrap:anywhere!important}
  .inner-hero h1{font-size:28px!important;line-height:1!important}

  /* Woo cart/checkout safety */
  .rm-commerce-page .content-page{overflow-x:hidden!important}
  .rm-commerce-page table.shop_table{font-size:11px!important}
  .rm-commerce-page form.checkout{display:block!important}
  .rm-commerce-page #order_review_heading{margin-top:24px!important}
}

@media (max-width: 480px){
  .wrap{width:calc(100% - 24px)!important}

  /* Large iPhones are wider than 420px: keep the phone layout active. */
  .site-header .topbar{gap:8px 9px!important;padding-top:9px!important;padding-bottom:9px!important}
  .site-header .brand{gap:5px!important}
  .site-header .gear{font-size:25px!important}
  .site-header .brand strong{font-size:14px!important}
  .site-header .brand small{font-size:6.5px!important}
  .site-header .head-icons{gap:7px!important}
  .site-header .head-icons>a{min-width:36px!important;font-size:17px!important}
  .site-header .head-icons small{font-size:6.5px!important}
  .site-header .search{height:42px!important}
  .site-header .search button{width:44px!important;flex-basis:44px!important}
  .site-header .header-quicklinks a{height:34px!important;padding:0 9px!important;font-size:8px!important}

  body.home .hero .hero-grid{padding-top:24px!important;padding-bottom:20px!important}
  body.home .hero h1{font-size:30px!important;line-height:.98!important;margin:12px 0 10px!important}
  body.home .hero .eyebrow{max-width:100%!important;font-size:6.5px!important}
  body.home .hero p{font-size:12px!important}
  body.home .benefits,body.home .hero-benefits-final{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;margin-top:17px!important}
  body.home .hero-benefit{min-height:58px!important;padding:7px!important;gap:6px!important}
  body.home .hero-benefit img{width:32px!important;height:32px!important;flex-basis:32px!important}
  body.home .hero-benefit b{font-size:8px!important}
  body.home .hero-benefit small{font-size:6.5px!important}

  .home .section-head{align-items:flex-start!important}
  .home .section-head h2{font-size:17px!important;line-height:1.05!important}
  .home .section-head a{font-size:8px!important;padding-top:2px!important}

  /* Category cards need the full phone width so names do not break awkwardly. */
  .home .cats{grid-template-columns:1fr!important;gap:7px!important}
  .home .cat-photo{min-height:118px!important;padding:15px 47% 14px 14px!important}
  .home .cat-photo b{font-size:11px!important;line-height:1.2!important;overflow-wrap:anywhere!important}
  .home .cat-photo small{font-size:8px!important}
  .home .cat-photo .cat-img{width:46%!important}
  .home .cat-photo .cat-img img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}

  .home .rm-products{gap:7px!important}
  .home .rm-product-img{height:118px!important}
  .rm-shop-main ul.products{gap:7px!important}
  .rm-shop-main li.product img{height:108px!important}
  .rm-shop-main ul.products li.product .woocommerce-loop-product__title{font-size:8.5px!important}

  /* Floating contact control: smaller and tighter to the edge on phones. */
  .rm-contact-widget{right:10px!important;bottom:10px!important}
  .rm-contact-toggle{width:46px!important;height:46px!important;font-size:22px!important}
  .rm-contact-panel{bottom:58px!important;width:calc(100vw - 20px)!important;max-width:315px!important}

  .footer,.footer a,.footer span,.footer small{font-size:10px!important}
}
