/* SoftLicenseHub — mobile app-style layout (phones & small tablets) */

@media (max-width: 768px) {
  /* ---- Shell ---- */
  .container{width:min(1180px, calc(100% - 20px))}
  .section{padding:22px 0}
  .section-head{margin-bottom:12px;align-items:flex-start;gap:10px}
  .section-head h2{font-size:1.2rem;line-height:1.25}
  .section-head p{font-size:.84rem;margin-top:4px}
  .section-head .btn{padding:8px 12px;font-size:.8rem}

  /* ---- Product grids: always 2 columns (app style) ---- */
  .product-grid,
  .product-grid--4,
  .shop-layout .product-grid,
  .pp-related .product-grid,
  .trend-section .product-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px !important;
  }

  /* ---- Compact product cards ---- */
  .pcard{
    border-radius:14px;
    box-shadow:0 4px 14px rgba(15,23,42,.05);
    min-width:0;
    max-width:100%
  }
  .pcard:hover{transform:none}
  .pcard__media{
    aspect-ratio:auto !important;
    height:118px !important;
    max-height:118px !important;
    padding:10px 8px 4px;
    min-height:0;
    overflow:hidden
  }
  .pcard__media img{
    max-height:100px !important;
    max-width:86%;
    width:auto;
    height:auto;
    object-fit:contain
  }
  .pcard__badge{
    top:8px;left:8px;
    font-size:.58rem;
    padding:3px 6px
  }
  .pcard__body{
    padding:4px 10px 10px;
    gap:5px
  }
  .pcard__meta{font-size:.68rem}
  .pcard__platform{padding:1px 6px;font-size:.65rem}
  .pcard__title{
    font-size:.78rem;
    line-height:1.3;
    min-height:0;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
  }
  .pcard__price{gap:5px}
  .pcard__price strong{font-size:.98rem}
  .pcard__price s{font-size:.72rem}
  .pcard__actions{
    grid-template-columns:1fr 1fr;
    gap:6px;
    margin-top:2px
  }
  .pcard__cart,
  .pcard__call{
    padding:9px 6px;
    font-size:.72rem;
    border-radius:10px
  }

  /* ---- Home hero: dedicated mobile layout in home.css ---- */

  /* ---- Stats ---- */
  .stats-band__grid{
    grid-template-columns:1fr !important;
    gap:8px
  }
  .stat-card{padding:12px;border-radius:12px}
  .stat-card__icon{width:38px;height:38px;font-size:1rem}
  .stat-card strong{font-size:1.15rem}
  .stat-card span{font-size:.8rem}
  .trust-mini{
    padding:10px 12px;
    flex-direction:column;
    align-items:flex-start;
    gap:10px
  }
  .trust-mini__items{gap:8px 12px}
  .trust-mini__items span{font-size:.78rem}

  /* ---- Mac picks carousel ---- */
  .picks{margin:12px 0 0;padding:14px 0 0}
  .picks h2{font-size:1.2rem}
  .picks p{font-size:.84rem}
  .picks-track{gap:10px;padding-bottom:12px}
  .picks-track .pcard{
    flex:0 0 calc(50% - 5px) !important;
    max-width:calc(50% - 5px)
  }
  .picks-nav button{width:34px;height:34px}

  /* ---- Categories ---- */
  .category-grid{
    grid-template-columns:1fr 1fr !important;
    gap:8px
  }
  .category-card{
    padding:10px;
    border-radius:14px;
    gap:8px
  }
  .category-card__media{
    width:52px;height:52px;border-radius:10px
  }
  .category-card__media img{max-width:40px;max-height:40px}
  .category-card strong{font-size:.82rem}
  .category-card span{font-size:.72rem}

  /* ---- Reviews on home ---- */
  .reviews-grid{
    grid-template-columns:1fr !important;
    gap:10px
  }
  .review-card{padding:14px;border-radius:14px}
  .review-card p{font-size:.88rem}

  /* ---- SEO blocks ---- */
  .seo-block{padding:18px 0 28px}
  .seo-intro h2{font-size:1.2rem}
  .seo-intro p{font-size:.88rem}
  .seo-feature__media{min-height:160px;padding:16px}
  .seo-feature__media img{max-height:150px}
  .seo-feature__copy{padding:16px}
  .seo-feature__copy h3{font-size:1.05rem}
  .seo-feature__copy p{font-size:.88rem}

  /* ---- Secure / CTA ---- */
  .secure-band__inner{flex-direction:column;align-items:flex-start;gap:12px}
  .secure-band h2{font-size:1.15rem}
  .split-cta{grid-template-columns:1fr !important;gap:14px}
  .callback-card{padding:16px;border-radius:16px}

  /* ---- Shop / category pages ---- */
  .page-hero{padding:12px 0 4px}
  .page-hero h1{font-size:1.35rem !important;line-height:1.25;margin-bottom:6px}
  .page-hero .eyebrow{margin-bottom:6px;font-size:.72rem;padding:4px 9px}
  .page-hero__lead{
    font-size:.84rem !important;
    margin-bottom:8px !important;
    -webkit-line-clamp:2;
    line-height:1.45
  }
  .breadcrumbs{margin-bottom:6px;font-size:.75rem}

  .shop-layout{
    display:block !important;
    padding:0 0 80px !important;
    gap:0
  }
  .shop-layout > .filters{display:none !important}
  .shop-mobile-bar{display:block !important;margin-bottom:8px}
  .shop-chips{
    display:flex;
    gap:6px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding:4px 0 8px;
    margin:0;
    scrollbar-width:none
  }
  .shop-chips::-webkit-scrollbar{display:none}
  .shop-chip{
    flex:0 0 auto;
    max-width:70vw;
    overflow:hidden;
    text-overflow:ellipsis;
    padding:7px 12px;
    font-size:.76rem;
    border-radius:999px
  }
  .shop-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    padding:8px 10px;
    margin-bottom:10px;
    border-radius:12px
  }
  .shop-toolbar__count{font-size:.84rem}
  .shop-toolbar form{margin:0}
  .shop-toolbar select{min-width:110px;padding:7px 8px;font-size:.8rem}

  .shop-layout .product-grid,
  .shop-layout > div > .product-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px !important;
    width:100%;
  }
  .shop-layout .pcard__media{
    aspect-ratio:auto !important;
    height:110px !important;
    max-height:110px !important;
    padding:8px
  }
  .shop-layout .pcard__media img{max-height:94px !important}
  .shop-layout .pcard__title{
    font-size:.76rem;
    -webkit-line-clamp:2;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:0
  }
  .shop-layout .pcard__body{padding:4px 8px 8px}
  .shop-layout .pcard__price strong{font-size:.95rem}
  .shop-layout .pcard__cart{padding:8px 6px;font-size:.74rem}

  /* ---- Header polish ---- */
  .brand__text small{display:none}
  .brand__text strong{font-size:.98rem}
  .brand__logo--mark{width:34px;height:34px;border-radius:9px;box-shadow:0 4px 12px rgba(15,118,110,.2)}
  .header-search{border-radius:12px}
  .header-search input{padding:10px 12px;font-size:.9rem}
  .header-search button{padding:0 14px;font-size:.85rem}
  .cart-btn{
    width:40px;height:40px;padding:0;font-size:.82rem;gap:0;
    min-height:40px;align-items:center;justify-content:center;border-radius:12px
  }
  .cart-btn__icon svg{width:18px;height:18px}
  .cart-btn__count{min-width:18px;height:18px;font-size:.65rem}
  .nav-toggle{
    width:40px;height:40px;border-radius:11px;
    border:1px solid #E2E8F0;background:#fff
  }
  .header-actions{gap:6px;max-width:100%}
  .header-actions .verified-badge{max-width:min(148px,42vw)}
  .promo-bar{font-size:.75rem}
  .promo-bar__inner{gap:8px;flex-wrap:wrap;justify-content:flex-start}
  .lead-strip{padding:14px 0;margin-top:8px}
  .lead-strip__grid{gap:10px}
  .lead-strip h2{font-size:1.05rem;margin:0 0 4px;line-height:1.25}
  .lead-strip p{
    font-size:.8rem;line-height:1.4;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
  }
  .lead-strip__actions{width:100%;gap:8px}
  .lead-strip__actions .btn{flex:1;text-align:center;justify-content:center;padding:10px 12px;font-size:.85rem}

  /* Cart / checkout mobile cards */
  .checkout-grid{grid-template-columns:1fr !important;gap:14px}
  .table-wrap{border-radius:14px;overflow:hidden}
  .cart-table{min-width:0;display:block}
  .cart-table thead{display:none}
  .cart-table tbody{display:grid;gap:10px;padding:10px}
  .cart-table tr{
    display:grid;grid-template-columns:1fr auto;gap:8px;
    padding:12px;border:1px solid #E6EEF2;border-radius:12px;background:#fff
  }
  .cart-table td{border:0;padding:0;display:block}
  .cart-table td:nth-child(1){grid-column:1 / -1}
  .cart-table td:nth-child(2)::before{content:"Price ";color:#64748B;font-size:.75rem}
  .cart-table td:nth-child(3)::before{content:"Qty ";color:#64748B;font-size:.75rem}
  .cart-item{gap:10px}
  .cart-item img{width:56px;height:56px}
  .summary-card{padding:16px;border-radius:16px;position:static}

  /* Contact / forms */
  .form-card,.content-card{padding:16px;border-radius:16px}
  .callback-card{padding:16px;border-radius:16px}

  /* ---- Floating call ---- */
  main{padding-bottom:78px}

  /* ---- Flash + forms ---- */
  .flash{margin:10px 0;padding:12px 14px;border-radius:12px;font-size:.88rem}
  .empty{padding:28px 16px;text-align:center;border-radius:16px}
  .empty .btn{width:100%;justify-content:center}
  .form-card label{font-size:.82rem}
  .form-card input,.form-card select,.form-card textarea{
    font-size:16px; /* prevent iOS zoom */
    min-height:44px;border-radius:12px
  }
  .form-card textarea{min-height:110px}
  .btn-block{width:100%;justify-content:center}
  .btn{min-height:44px}

  /* ---- Compare / reviews / support ---- */
  .compare-plan{padding:16px;border-radius:16px}
  .compare-plan__price strong{font-size:1.45rem}
  .compare-help__actions{width:100%}
  .compare-help__actions .btn{flex:1 1 100%;justify-content:center}
  .review-card{padding:14px;border-radius:14px}
  .support-quick a{padding:14px;border-radius:14px;font-size:.9rem}

  /* ---- Category strip under header ---- */
  .cat-strip{border-bottom:1px solid #E6EEF2}
  .cat-strip__row{gap:6px;padding:8px 0}
  .cat-strip__all,.cat-strip__link{
    padding:7px 12px;font-size:.76rem;border-radius:999px;white-space:nowrap
  }
}

@media (max-width: 380px) {
  .pcard__title{font-size:.74rem}
  .pcard__price strong{font-size:.92rem}
  .pcard__media img{max-height:92px}
  .header-actions .verified-badge{max-width:118px;padding:2px 6px 2px 2px}
  .header-actions .verified-badge__body strong{font-size:.58rem}
  .header-actions .verified-badge__body span{font-size:.52rem}
}
