/* Page styles from newdesigen/category.html */
:root{
      --blue:#004fc4;
      --blue-dark:#003a98;
      --blue-soft:#eef7ff;
      --green:#18b957;
      --text:#10265f;
      --muted:#6a7892;
      --border:#dbe8f7;
      --bg:#f7fbff;
      --white:#fff;
      --shadow:0 16px 42px rgba(0,65,160,.11);
      --radius:20px;
    }

    *{box-sizing:border-box;margin:0;padding:0}

    body{
      font-family:"Heebo",Arial,sans-serif;
      background:#fff;
      color:var(--text);
      line-height:1.7;
    }

    a{text-decoration:none;color:inherit}
    button,input,select{font-family:inherit}

    .container{
      width:min(1180px,92%);
      margin:auto;
    }

    /* Top bar */
    .top-bar{
      background:linear-gradient(90deg,#00358f,#0056d8);
      color:#fff;
      font-size:14px;
    }

    .top-inner{
      min-height:42px;
      display:grid;
      grid-template-columns:1fr 1fr 1fr;
      align-items:center;
      gap:20px;
      text-align:center;
      font-weight:700;
    }

    .top-item{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
    }

    .top-icon{
      width:18px;
      height:18px;
      flex-shrink:0;
    }

    /* Header */
    .header{
      background:#fff;
      border-bottom:1px solid #e6edf7;
      position:sticky;
      top:0;
      z-index:50;
      box-shadow:0 6px 18px rgba(0,0,0,.04);
    }

    .header-inner{
      height:83px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:24px;
    }

    .logo{
      display:flex;
      align-items:center;
      flex-shrink:0;
    }

    .logo img{
      height:54px;
      width:auto;
      display:block;
    }

    .header-nav-group{
      display:flex;
      align-items:center;
      flex:1;
      justify-content:center;
      min-width:0;
    }

    .header-tools{
      display:flex;
      align-items:center;
      gap:18px;
      flex-shrink:0;
    }

    .nav{
      display:flex;
      align-items:stretch;
      gap:26px;
      font-size:15px;
      color:#1a2f5c;
      font-weight:700;
      height:83px;
      width:100%;
    }

    .nav .header-auth{
      margin-inline-start:auto;
      align-self:center;
      height:auto;
    }

    .nav > a{
      display:inline-flex;
      align-items:center;
      border-bottom:3px solid transparent;
      white-space:nowrap;
    }

    .nav > a.active{
      color:var(--blue);
      border-bottom-color:var(--blue);
    }

    .whatsapp-btn{
      background:#25d366;
      color:#fff;
      padding:12px 24px;
      border-radius:10px;
      font-weight:800;
      font-size:15px;
      display:inline-flex;
      align-items:center;
      gap:10px;
      box-shadow:0 6px 16px rgba(37,211,102,.28);
      border:none;
      cursor:pointer;
      flex-shrink:0;
      white-space:nowrap;
    }

    .whatsapp-btn svg{
      width:22px;
      height:22px;
      flex-shrink:0;
    }

    .header-auth{
      display:flex;
      align-items:center;
      gap:10px;
      flex-shrink:0;
    }

    .btn-auth{
      padding:10px 20px;
      border-radius:10px;
      font-weight:800;
      font-size:15px;
      white-space:nowrap;
      display:inline-flex;
      align-items:center;
      transition:.2s ease;
    }

    .btn-login{
      background:#fff;
      color:var(--blue);
      border:2px solid var(--blue);
    }

    .btn-login:hover{
      background:var(--blue-soft);
    }

    .btn-register{
      background:var(--blue);
      color:#fff;
      border:2px solid var(--blue);
      box-shadow:0 6px 16px rgba(0,79,196,.2);
    }

    .btn-register:hover{
      transform:translateY(-2px);
    }

    .cart{
      position:relative;
      width:34px;
      height:34px;
      display:grid;
      place-items:center;
      flex-shrink:0;
      cursor:pointer;
      background:none;
      border:none;
      padding:0;
    }

    .cart img{
      width:28px;
      height:28px;
      display:block;
    }

    .cart-badge{
      position:absolute;
      top:-6px;
      inset-inline-start:-6px;
      min-width:18px;
      height:18px;
      padding:0 4px;
      border-radius:999px;
      background:var(--blue);
      color:#fff;
      font-size:10px;
      font-weight:800;
      line-height:1;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      direction:ltr;
      unicode-bidi:isolate;
      text-align:center;
      box-sizing:border-box;
    }

    .mobile-menu{
      display:none;
      background:var(--blue);
      color:#fff;
      border:none;
      border-radius:10px;
      padding:10px 13px;
      font-size:20px;
      line-height:1;
      cursor:pointer;
      position:relative;
      z-index:2;
    }

    .mobile-menu.is-open{
      background:#1a2f5c;
    }

    body.menu-open{
      overflow:hidden;
    }

    .nav-close{
      display:none;
    }

    /* Category Hero */
    .category-hero{
      background:
        radial-gradient(circle at 12% 18%,rgba(0,116,255,.13),transparent 30%),
        radial-gradient(circle at 92% 8%,rgba(0,116,255,.12),transparent 28%),
        linear-gradient(180deg,#f3fbff 0%,#fff 100%);
      padding:42px 0 34px;
      overflow:hidden;
    }

    .breadcrumbs{
      color:var(--muted);
      font-size:14px;
      margin-bottom:18px;
    }

    .breadcrumbs span{
      color:var(--blue);
      font-weight:800;
    }

    .hero-box{
      min-height:255px;
      background:url('../../images/5d223541-90a3-4f7c-a098-b2cb4af04a37.png') no-repeat center center;
      background-size:cover;
      border:1px solid var(--border);
      border-radius:26px;
      box-shadow:var(--shadow);
      display:flex;
      align-items:center;
      padding:34px;
      position:relative;
      overflow:hidden;
    }

    .hero-box:before{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(90deg,rgba(255,255,255,.15) 0%,rgba(255,255,255,.75) 45%,rgba(255,255,255,.92) 100%);
      pointer-events:none;
      z-index:1;
    }

    .hero-content{
      position:relative;
      z-index:2;
    }

    .hero-content h1{
      font-size:43px;
      line-height:1.15;
      color:#112d70;
      font-weight:900;
      margin-bottom:12px;
    }

    .hero-content p{
      color:#334260;
      font-size:18px;
      max-width:620px;
      margin-bottom:20px;
    }

    .hero-tags{
      display:flex;
      gap:10px;
      flex-wrap:wrap;
    }

    .hero-tag{
      background:#eef7ff;
      border:1px solid #cfe6ff;
      color:var(--blue);
      border-radius:999px;
      padding:8px 14px;
      font-weight:800;
      font-size:14px;
    }


    .points-club{
      margin-top:18px;
      background:linear-gradient(90deg,#eef7ff,#fff);
      border:1px solid #cfe6ff;
      border-radius:18px;
      padding:20px 24px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
      flex-wrap:wrap;
      box-shadow:0 12px 28px rgba(0,65,160,.06);
    }

    .points-club-content{
      flex:1;
      min-width:260px;
    }

    .points-club-content strong{
      display:block;
      color:var(--blue);
      font-size:18px;
      font-weight:600;
      margin-bottom:6px;
    }

    .points-club-content p{
      color:#334260;
      font-size:15px;
      line-height:1.55;
      max-width:760px;
    }

    .points-club-actions{
      display:flex;
      align-items:center;
      gap:10px;
      flex-shrink:0;
      flex-wrap:wrap;
    }

    .points-club-or{
      color:var(--muted);
      font-size:14px;
      font-weight:700;
    }

    /* Layout */
    .category-section{
      padding:38px 0 55px;
    }

    .category-layout{
      display:grid;
      grid-template-columns:280px 1fr;
      gap:28px;
      align-items:start;
    }

    /* Sidebar */
    .sidebar{
      position:sticky;
      top:105px;
      display:grid;
      gap:16px;
    }

    .filter-box{
      background:#fff;
      border:1px solid var(--border);
      border-radius:18px;
      box-shadow:0 12px 28px rgba(0,65,160,.07);
      padding:20px;
    }

    .filter-box h3{
      color:var(--blue);
      font-size:18px;
      font-weight:900;
      margin-bottom:14px;
    }

    .filter-list{
      display:grid;
      gap:10px;
    }

    .check-row{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      color:#2d3b58;
      font-weight:700;
      font-size:14px;
      cursor:pointer;
    }

    .check-row input{
      accent-color:var(--blue);
      width:17px;
      height:17px;
    }

    .range-row{
      display:grid;
      gap:10px;
      color:var(--muted);
      font-size:14px;
      font-weight:700;
    }

    .range-row input{
      width:100%;
      accent-color:var(--blue);
    }

    .reset-btn{
      width:100%;
      border:1px solid var(--border);
      background:#f7fbff;
      color:var(--blue);
      font-weight:900;
      border-radius:13px;
      padding:12px;
      cursor:pointer;
      margin-top:4px;
    }

    .filter-toggle{
      display:none;
    }

    .filter-close{
      display:none;
    }

    .filter-title{
      display:none;
    }

    body.filter-open{
      overflow:hidden;
    }

    /* Toolbar */
    .toolbar{
      background:#fff;
      border:1px solid var(--border);
      border-radius:18px;
      box-shadow:0 12px 28px rgba(0,65,160,.06);
      padding:16px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:15px;
      margin-bottom:18px;
      flex-wrap:wrap;
    }

    .results-count{
      font-weight:800;
      color:#243452;
    }

    .toolbar-actions{
      display:flex;
      align-items:center;
      gap:10px;
      flex-wrap:wrap;
    }

    .sort-select{
      border:1px solid var(--border);
      background:#fff;
      color:#223454;
      border-radius:12px;
      padding:11px 14px;
      font-weight:700;
      outline:none;
    }

    .view-btn{
      width:42px;
      height:42px;
      border:1px solid var(--border);
      background:#fff;
      border-radius:12px;
      color:var(--blue);
      font-size:20px;
      cursor:pointer;
      display:grid;
      place-items:center;
    }

    .view-btn.active{
      background:var(--blue);
      color:#fff;
      border-color:var(--blue);
    }

    /* Products */
    .products-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:20px;
      align-items:stretch;
    }

    .product-card{
      display:flex;
      flex-direction:column;
      align-items:stretch;
      background:#fff;
      border:1px solid var(--border);
      border-radius:20px;
      box-shadow:0 14px 32px rgba(0,65,160,.08);
      padding:18px;
      transition:.2s ease;
      position:relative;
      overflow:hidden;
    }

    .products-grid:not(.list-view) .product-info{
      flex:1 1 auto;
      display:flex;
      flex-direction:column;
      min-height:0;
    }

    .products-grid:not(.list-view) .product-meta{
      flex:0 0 auto;
    }

    .products-grid:not(.list-view) .product-info .pack-size-card,
    .products-grid:not(.list-view) .product-info .pack-size-selector{
      margin-top:auto;
      padding-top:10px;
      flex-shrink:0;
    }

    .products-grid:not(.list-view) .product-bottom{
      margin-top:auto;
      display:flex;
      flex-direction:column;
      align-items:stretch;
      gap:10px;
      padding-top:4px;
      flex-shrink:0;
    }

    .products-grid:not(.list-view) .product-bottom .price{
      line-height:1.1;
    }

    .products-grid:not(.list-view) .product-bottom .card-price-current{
      color:inherit;
      font-size:inherit;
      font-weight:inherit;
    }

    .products-grid:not(.list-view) .price-old-inline{
      display:inline;
      text-decoration:line-through;
      opacity:.6;
      margin-inline-start:6px;
      font-size:14px;
      font-weight:600;
    }

    .products-grid:not(.list-view) .details-btn{
      width:100%;
      min-height:46px;
      padding:0 16px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border-radius:11px;
      box-sizing:border-box;
      flex-shrink:0;
    }

    .product-card:hover{
      transform:translateY(-5px);
      box-shadow:var(--shadow);
    }

    .product-badge{
      position:absolute;
      top:14px;
      right:14px;
      background:var(--blue);
      color:#fff;
      font-size:12px;
      font-weight:900;
      padding:5px 12px;
      border-radius:999px;
      z-index:3;
    }

    .product-image{
      height:210px;
      border-radius:17px;
      background:#fff;
      border:1px solid #d8e4f2;
      display:flex;
      align-items:center;
      justify-content:center;
      margin-bottom:15px;
      overflow:hidden;
      padding:12px;
    }

    .product-image img{
      width:100%;
      height:100%;
      object-fit:contain;
      display:block;
    }

    .product-title{
      color:#102b70;
      font-size:20px;
      font-weight:900;
      margin-bottom:5px;
    }

    .product-title a{
      color:inherit;
      text-decoration:none;
    }

    .product-title a:hover{
      color:var(--blue);
    }

    .product-desc{
      color:var(--muted);
      font-size:14px;
      margin-bottom:12px;
    }

    .product-meta{
      list-style:none;
      display:grid;
      gap:6px;
      margin-bottom:14px;
      color:#31405f;
      font-size:14px;
      font-weight:600;
    }

    .product-meta li:before{
      content:"✓";
      color:var(--green);
      font-weight:900;
      margin-left:7px;
    }

    .product-bottom{
      display:flex;
      align-items:stretch;
      justify-content:flex-start;
      gap:10px;
      margin-top:12px;
    }

    .price{
      color:var(--blue);
      font-size:25px;
      font-weight:900;
      line-height:1;
    }

    .price small{
      display:block;
      color:var(--muted);
      font-size:12px;
      font-weight:700;
      margin-top:4px;
    }

    .details-btn{
      border:0;
      background:var(--blue);
      color:#fff;
      border-radius:11px;
      padding:11px 16px;
      font-family:inherit;
      font-size:15px;
      font-weight:700;
      line-height:1.2;
      letter-spacing:0;
      cursor:pointer;
      box-shadow:0 10px 20px rgba(0,79,196,.2);
      transition:transform .15s ease, box-shadow .15s ease;
    }

    .details-btn:hover{
      transform:translateY(-1px);
      box-shadow:0 12px 24px rgba(0,79,196,.28);
    }

    /* Pack selector on shop cards */
    .products-grid .pack-size-card,
    .products-grid .pack-size-selector.pack-size-card{
      margin:0;
    }

    .products-grid .pack-size-card .pack-size-options{
      display:flex;
      flex-direction:row;
      gap:4px;
    }

    .products-grid .pack-size-card .pack-size-btn{
      flex:1;
      min-width:0;
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:1px;
      padding:4px 2px;
      border:1px solid #d8e4f2;
      border-radius:8px;
      background:#fff;
      color:#102b70;
      font-family:inherit;
      font-size:11px;
      font-weight:800;
      line-height:1.2;
      cursor:pointer;
      transition:border-color .15s, background .15s;
    }

    .products-grid .pack-size-card .pack-size-btn:hover{
      border-color:#7eb3f0;
      background:#f7fbff;
    }

    .products-grid .pack-size-card .pack-size-btn.active{
      border-color:var(--blue);
      background:#eaf4ff;
      box-shadow:0 0 0 1px var(--blue);
    }

    .products-grid .pack-size-card .pack-size-name{
      font-size:12px;
      font-weight:900;
    }

    .products-grid .pack-size-card .pack-size-price{
      font-size:10px;
      color:var(--blue);
      font-weight:700;
    }

    /* List View */
    .products-grid.list-view{
      grid-template-columns:1fr;
    }

    .products-grid.list-view .product-card{
      display:grid;
      grid-template-columns:170px minmax(0,1fr) auto auto;
      gap:16px 20px;
      align-items:center;
      padding:16px 20px;
    }

    .products-grid.list-view .product-image{
      margin-bottom:0;
      height:130px;
    }

    .products-grid.list-view .product-info{
      min-width:0;
    }

    .products-grid.list-view .product-title{
      margin-bottom:4px;
      font-size:18px;
    }

    .products-grid.list-view .product-desc{
      margin-bottom:8px;
      font-size:13px;
      line-height:1.4;
    }

    .products-grid.list-view .product-meta{
      display:flex;
      flex-wrap:wrap;
      gap:4px 14px;
      margin-bottom:0;
    }

    .products-grid.list-view .product-meta li{
      font-size:12px;
    }

    .products-grid.list-view .product-bottom{
      display:contents;
      margin-top:0;
    }

    .products-grid.list-view .price{
      font-size:22px;
      white-space:nowrap;
      align-self:center;
    }

    .products-grid.list-view .details-btn{
      white-space:nowrap;
      align-self:center;
    }

    /* Info Strip */
    .info-strip{
      margin-top:28px;
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
    }

    .strip-item{
      background:#fff;
      border:1px solid var(--border);
      border-radius:18px;
      padding:20px;
      text-align:center;
      box-shadow:0 12px 28px rgba(0,65,160,.06);
    }

    .strip-item .icon{
      width:56px;
      height:56px;
      margin:0 auto 12px;
      display:grid;
      place-items:center;
      color:var(--blue);
    }

    .strip-item .icon svg{
      width:48px;
      height:48px;
    }

    .strip-item h3{
      color:var(--blue);
      font-size:16px;
      margin-bottom:4px;
    }

    .strip-item p{
      color:var(--muted);
      font-size:13px;
    }

    /* FAQ */
    .faq-section{
      padding:42px 0;
    }

    .section-title{
      color:var(--blue);
      font-size:30px;
      text-align:center;
      font-weight:900;
      margin-bottom:28px;
    }

    .faq-wrap{
      display:grid;
      grid-template-columns:260px 1fr;
      gap:28px;
      align-items:stretch;
    }

    .support-box{
      background:#f4f7fb;
      border:1px solid #e8eef5;
      border-radius:16px;
      padding:28px 22px;
      height:100%;
      display:flex;
      flex-direction:column;
      justify-content:center;
      gap:32px;
      box-shadow:0 6px 18px rgba(0,52,130,.04);
    }

    .support-row{
      display:flex;
      align-items:center;
      gap:14px;
      text-align:right;
    }

    .support-row-icon{
      width:52px;
      height:52px;
      flex-shrink:0;
      display:grid;
      place-items:center;
      color:var(--blue);
    }

    .support-row-icon svg{
      width:42px;
      height:42px;
    }

    .support-row-icon.whatsapp{
      color:#25d366;
    }

    .support-row-text b{
      display:block;
      color:var(--blue);
      font-size:16px;
      font-weight:800;
      line-height:1.35;
      margin-bottom:4px;
    }

    .support-row-text span{
      display:block;
      color:#5a6f8f;
      font-size:14px;
      line-height:1.4;
    }

    .faq-item{
      border:1px solid var(--border);
      border-radius:12px;
      margin-bottom:10px;
      overflow:hidden;
      background:#fff;
    }

    .faq-question{
      width:100%;
      padding:17px 20px;
      background:#fff;
      border:none;
      text-align:right;
      display:flex;
      align-items:center;
      justify-content:space-between;
      cursor:pointer;
      color:var(--text);
      font-family:inherit;
      font-size:16px;
      font-weight:700;
      line-height:1.45;
      letter-spacing:0;
    }

    .faq-answer{
      max-height:0;
      overflow:hidden;
      transition:max-height .25s ease;
      color:var(--muted);
      padding:0 20px;
      font-size:14px;
      border-top:1px solid transparent;
    }

    .faq-item.active .faq-answer{
      max-height:140px;
      padding:14px 20px 18px;
      border-top-color:#eef3fa;
    }

    .faq-item .plus{
      color:var(--blue);
      font-size:22px;
      transition:.2s;
    }

    .faq-item.active .plus{
      transform:rotate(45deg);
    }

    /* CTA */
    .bottom-cta{
      margin:12px 0 0;
      padding:0 0 42px;
    }

    .cta-box{
      min-height:100px;
      background:url('../../images/331ecc5f-c508-4801-af96-fb4016b8b906.png') center/cover no-repeat;
      color:#fff;
      border-radius:20px;
      display:grid;
      grid-template-columns:auto 1fr;
      align-items:center;
      gap:22px;
      padding:22px 34px;
      box-shadow:0 18px 35px rgba(0,76,190,.22);
      overflow:hidden;
    }

    .cta-box h2{
      font-size:27px;
    }

    .cta-box p{
      opacity:.9;
      font-size:15px;
    }

    /* Footer */
    .footer{
      background:linear-gradient(180deg,#0055cc,#003d9f);
      color:#fff;
      margin-top:35px;
    }

    .footer-inner{
      display:grid;
      grid-template-columns:1.1fr 1fr 1fr 1.2fr;
      gap:28px;
      padding:32px 0;
    }

    .footer h3{
      font-size:16px;
      margin-bottom:12px;
    }

    .footer p,
    .footer a{
      display:block;
      color:rgba(255,255,255,.84);
      font-size:13px;
      margin:6px 0;
    }

    .footer-logo img{
      height:80px;
      width:auto;
      display:block;
      margin-bottom:12px;
    }

    .copyright{
      border-top:1px solid rgba(255,255,255,.18);
      padding:10px 0 2px;
      text-align:center;
      font-size:12px;
      color:rgba(255,255,255,.8);
    }

    .footer-credit{
      text-align:center;
      padding:2px 0 6px;
      line-height:0;
    }

    .footer-credit a{
      display:inline-block;
      opacity:.85;
      transition:opacity .2s ease;
    }

    .footer-credit a:hover{
      opacity:1;
    }

    .footer-credit img{
      height:34px;
      width:auto;
      display:block;
    }

    @media(max-width:1000px){
      .top-inner{
        grid-template-columns:1fr;
        height:auto;
        gap:5px;
        padding:8px 0;
      }

      .mobile-menu{display:block}

      body.menu-open .header{
        z-index:130;
      }

      .header-inner{
        height:auto;
        padding:12px 0;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        position:relative;
      }

      .header-nav-group{
        position:absolute;
        inset:0;
        width:0;
        height:0;
        overflow:visible;
        pointer-events:none;
      }

      .header-tools{
        gap:12px;
        flex-shrink:0;
      }

      .mobile-menu{
        display:block;
      }

      .nav{
        display:none;
        position:fixed;
        inset:0;
        z-index:120;
        width:100%;
        min-height:100dvh;
        background:#fff;
        flex-direction:column;
        align-items:stretch;
        justify-content:flex-start;
        gap:0;
        padding:88px 24px 28px;
        overflow-y:auto;
        height:auto;
        pointer-events:auto;
      }

      .nav.open{display:flex}

      .nav-close{
        display:grid;
        place-items:center;
        position:absolute;
        top:18px;
        inset-inline-end:24px;
        width:44px;
        height:44px;
        background:#1a2f5c;
        color:#fff;
        border:none;
        border-radius:10px;
        font-size:22px;
        line-height:1;
        cursor:pointer;
        z-index:1;
      }

      .nav > a{
        width:100%;
        padding:18px 0;
        font-size:18px;
        border-bottom:1px solid var(--border);
      }

      .nav > a.active{
        color:var(--blue);
        padding-bottom:18px;
        border-bottom:1px solid var(--border);
      }

      .hero-box{
        text-align:center;
        min-height:220px;
        background-position:right center;
      }

      .hero-box:before{
        background:linear-gradient(270deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.62) 42%,rgba(255,255,255,.9) 100%);
      }

      .hero-tags{
        justify-content:center;
      }

      .points-club{
        flex-direction:column;
        align-items:stretch;
        text-align:center;
      }

      .points-club-actions{
        justify-content:center;
      }

      .category-layout{
        grid-template-columns:1fr;
      }

      body.filter-open .header{
        z-index:130;
      }

      .filter-toggle{
        display:inline-flex;
        align-items:center;
        gap:8px;
        border:1px solid var(--border);
        background:#fff;
        color:var(--blue);
        border-radius:12px;
        padding:11px 16px;
        font-weight:800;
        font-size:14px;
        cursor:pointer;
        flex-shrink:0;
      }

      #listView,
      #gridView{
        display:none;
      }

      .sidebar{
        display:none;
        position:fixed;
        inset:0;
        z-index:120;
        width:100%;
        min-height:100dvh;
        background:#fff;
        grid-template-columns:1fr;
        gap:16px;
        padding:88px 24px 28px;
        overflow-y:auto;
        top:0;
      }

      .sidebar.open{
        display:grid;
      }

      .filter-title{
        display:block;
        color:var(--blue);
        font-size:22px;
        font-weight:900;
        margin:0 0 8px;
        padding-inline-end:56px;
      }

      .filter-close{
        display:grid;
        place-items:center;
        position:absolute;
        top:18px;
        inset-inline-end:24px;
        width:44px;
        height:44px;
        background:#1a2f5c;
        color:#fff;
        border:none;
        border-radius:10px;
        font-size:22px;
        line-height:1;
        cursor:pointer;
        z-index:1;
      }

      .products-grid{
        grid-template-columns:repeat(2,1fr);
      }

      .products-grid .product-card{
        display:grid;
        grid-template-columns:130px minmax(0,1fr) auto;
        gap:12px 16px;
        align-items:center;
        padding:14px 16px;
      }

      .products-grid .product-image{
        margin-bottom:0;
        height:115px;
        padding:8px;
      }

      .products-grid .product-info{
        min-width:0;
        display:flex;
        flex-direction:column;
      }

      .products-grid:not(.list-view) .product-info .pack-size-card,
      .products-grid:not(.list-view) .product-info .pack-size-selector{
        margin-top:8px;
        padding-top:0;
      }

      .products-grid .product-title{
        margin-bottom:4px;
        font-size:16px;
      }

      .products-grid .product-desc{
        margin-bottom:8px;
        font-size:13px;
        line-height:1.4;
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden;
      }

      .products-grid .product-meta{
        display:flex;
        flex-wrap:wrap;
        gap:4px 12px;
        margin-bottom:0;
      }

      .products-grid .product-meta li{
        font-size:12px;
      }

      .products-grid .product-bottom{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        justify-content:center;
        gap:8px;
        margin-top:0;
        flex-shrink:0;
        min-width:108px;
      }

      .products-grid .price{
        font-size:20px;
        text-align:center;
        white-space:nowrap;
      }

      .products-grid:not(.list-view) .details-btn{
        width:100%;
        min-height:42px;
        padding:0 12px;
        font-size:13px;
        white-space:nowrap;
      }

      .products-grid.list-view .details-btn{
        width:auto;
        padding:9px 14px;
        font-size:13px;
        white-space:nowrap;
      }

      .products-grid.list-view .product-card{
        grid-template-columns:150px minmax(0,1fr) auto auto;
      }

      .products-grid.list-view .product-bottom{
        display:contents;
      }

      .info-strip{
        grid-template-columns:repeat(2,1fr);
      }

      .cta-box{
        grid-template-columns:1fr;
        text-align:center;
        background-image:
          linear-gradient(135deg,rgba(0,85,204,.55),rgba(0,61,159,.68)),
          url('../../images/331ecc5f-c508-4801-af96-fb4016b8b906 copy.png');
        background-size:cover;
        background-position:center;
        background-repeat:no-repeat;
      }

      .footer-inner,
      .faq-wrap{
        grid-template-columns:1fr 1fr;
      }

      .footer-inner{
        text-align:center;
      }

      .footer-logo img{
        margin-inline:auto;
      }

      .faq-wrap{
        align-items:stretch;
      }

      .nav .header-auth{
        margin-top:0;
        margin-inline-start:0;
        width:100%;
        padding-top:16px;
        flex-direction:row;
        gap:12px;
        flex-shrink:0;
      }

      .nav .header-auth .btn-auth{
        flex:1;
        width:auto;
        min-width:0;
        justify-content:center;
        padding:14px 12px;
        border-bottom:none;
      }

      .nav .header-auth .btn-login{
        border:2px solid var(--blue);
      }

      .nav .header-auth .btn-register{
        border:2px solid var(--blue);
      }

      .breadcrumbs{
        overflow-wrap:anywhere;
        line-height:1.5;
      }

      .points-club-content{
        min-width:0;
      }
    }

    @media(max-width:640px){
      .top-bar{
        display:none;
      }

      html,
      body{
        overflow-x:hidden;
        max-width:100%;
      }

      .container{
        width:100%;
        max-width:100%;
        padding-inline:16px;
      }

      .whatsapp-btn{
        padding:10px 16px;
        font-size:13px;
      }

      .logo img{
        height:44px;
      }

      .hero-content h1{
        font-size:32px;
      }

      .products-grid,
      .faq-wrap{
        grid-template-columns:1fr;
      }

      .footer-inner{
        grid-template-columns:1fr 1fr;
        gap:20px 16px;
        text-align:center;
      }

      .footer-inner > div:first-child,
      .footer-inner > div:last-child{
        grid-column:1 / -1;
      }

      .footer-logo img{
        margin-inline:auto;
      }

      .info-strip{
        grid-template-columns:repeat(2,1fr);
        gap:12px;
      }

      .strip-item{
        padding:16px 12px;
      }

      .products-grid .product-card{
        display:grid;
        grid-template-columns:110px minmax(0,1fr) auto;
        gap:10px 12px;
        align-items:center;
        padding:12px 14px;
      }

      .products-grid .product-image{
        margin-bottom:0;
        height:100px;
        padding:8px;
      }

      .products-grid .product-info{
        min-width:0;
        display:flex;
        flex-direction:column;
      }

      .products-grid:not(.list-view) .product-info .pack-size-card,
      .products-grid:not(.list-view) .product-info .pack-size-selector{
        margin-top:8px;
        padding-top:0;
      }

      .products-grid .product-title{
        margin-bottom:3px;
        font-size:15px;
      }

      .products-grid .product-desc{
        margin-bottom:6px;
        font-size:12px;
        line-height:1.35;
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden;
      }

      .products-grid .product-meta{
        display:flex;
        flex-wrap:wrap;
        gap:2px 10px;
        margin-bottom:0;
      }

      .products-grid .product-meta li{
        font-size:11px;
      }

      .products-grid .product-meta li:before{
        margin-left:4px;
      }

      .products-grid .product-bottom{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        justify-content:center;
        gap:8px;
        margin-top:0;
        flex-shrink:0;
        min-width:96px;
      }

      .products-grid .price{
        font-size:18px;
        text-align:center;
        white-space:nowrap;
      }

      .products-grid .price small{
        font-size:10px;
        margin-top:2px;
      }

      .products-grid:not(.list-view) .details-btn{
        width:100%;
        min-height:40px;
        padding:0 10px;
        font-size:12px;
        white-space:nowrap;
      }

      .products-grid.list-view .details-btn{
        width:auto;
        padding:8px 12px;
        font-size:12px;
        white-space:nowrap;
      }

      .products-grid.list-view .product-card{
        grid-template-columns:110px minmax(0,1fr) auto auto;
      }

      .products-grid.list-view .product-bottom{
        display:contents;
      }

      .products-grid.list-view .price{
        font-size:18px;
      }

      .toolbar{
        align-items:stretch;
      }

      .toolbar-actions{
        width:100%;
      }

      .sort-select{
        flex:1;
      }

      .btn-auth{
        padding:8px 14px;
        font-size:13px;
      }

      .hero-box{
        padding:22px 18px;
        min-height:auto;
        background-position:right 20% center;
      }

      .hero-box:before{
        background:linear-gradient(270deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,.58) 38%,rgba(255,255,255,.92) 100%);
      }

      .hero-content h1{
        font-size:28px;
      }

      .hero-content p{
        font-size:16px;
      }

      .section-title{
        font-size:25px;
      }

      .toolbar{
        flex-direction:column;
        align-items:stretch;
        gap:12px;
      }

      .toolbar-actions{
        flex-wrap:wrap;
      }

      .products-grid:not(.list-view) .product-bottom{
        min-width:0;
      }

      .product-bottom{
        flex-direction:column;
        align-items:stretch;
        gap:10px;
      }

      .products-grid:not(.list-view) .details-btn{
        width:100%;
        text-align:center;
      }

      .cta-box{
        padding:18px 20px;
        gap:16px;
      }

      .cta-box h2{
        font-size:22px;
      }

      .cta-box .whatsapp-btn{
        width:100%;
        justify-content:center;
      }

      .category-section{
        padding:28px 0 40px;
      }

      .points-club-actions{
        flex-direction:column;
        width:100%;
      }

      .points-club-actions .btn-auth{
        width:100%;
        justify-content:center;
      }
    }

    .product-image img[src*="cenforce"],
    .product-image img[src*="vidalista"],
    .main-image img[src*="cenforce"],
    .main-image img[src*="vidalista"]{
      background:transparent;
    }