/* ======================================
   Mobile Optimization CSS
   Only affects screens below 991px
   ====================================== */

/* ---------- GLOBAL: Zero padding/margin on mobile ---------- */
@media screen and (max-width: 767px) {
  .otrixcontainer {
    padding-left: 10px !important;
    padding-right: 10px !important;
    width: 100% !important;
  }
}

@media screen and (max-width: 575px) {
  .otrixcontainer {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
}

/* ======================================
   HOMEPAGE
   ====================================== */

@media screen and (max-width: 991px) {
  /* Banner full width */
  .banner_js,
  .banner_js .banner-slide > img {
    height: auto !important;
    min-height: auto;
  }

  .banner {
    padding: 0 !important;
  }

  .banner_js .banner-slide > img {
    object-fit: cover;
  }

  /* Sub banners */
  .home-right-banner {
    padding: 0 5px !important;
  }

  .sub-slider {
    height: auto !important;
    padding: 4px !important;
    margin-bottom: 8px !important;
  }

  .sub-slider img {
    height: auto !important;
    max-height: 120px;
  }
}

@media screen and (max-width: 767px) {
  .sub-slider {
    margin-bottom: 4px !important;
    padding: 2px !important;
  }

  .home-right-banner {
    padding: 0 2px !important;
  }
}

/* ======================================
   ALL PRODUCTS PAGE
   ====================================== */

@media screen and (max-width: 991px) {
  .prod-grid-col4 > li,
  .prod-grid-col3 > li,
  .prod-grid-col5 > li {
    width: 50% !important;
    padding: 5px !important;
  }

  .product-box {
    height: auto !important;
    min-height: 300px;
  }

  .product-box .prod-img {
    height: 150px !important;
    min-height: auto !important;
  }

  .product-box .prod-img img {
    max-height: 130px;
  }

  .prod-title {
    font-size: 13px !important;
    min-height: auto !important;
    line-height: 1.3;
    padding: 0 5px;
  }

  .product .price {
    font-size: 15px !important;
  }

  .product .offer {
    font-size: 11px !important;
  }

  .quickview {
    display: none !important;
  }

  .floating-add-to-cart,
  .floating-wishlist {
    width: 28px !important;
    height: 28px !important;
    line-height: 28px !important;
    font-size: 12px !important;
  }

  .floating-wishlist {
    top: 60% !important;
  }

  .floating-add-to-cart {
    top: 72% !important;
  }

  .latest-badge {
    font-size: 9px !important;
    padding: 3px 6px !important;
    top: 5px !important;
    left: 5px !important;
  }

  .product .rating {
    font-size: 10px !important;
  }

  /* Shop bar */
  .shop-bar {
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px 4px;
  }

  .shop-bar .product-count-text {
    display: none !important;
  }

  .shop-bar select {
    width: 100%;
    max-width: 180px;
    font-size: 13px;
    height: 36px;
  }

  .shop-col {
    padding-left: 0 !important;
    width: 100% !important;
  }

  .search-container {
    margin-bottom: 15px;
  }

  /* Pagination */
  .pagination .page-link {
    width: 34px !important;
    height: 34px !important;
    font-size: 12px !important;
    line-height: 34px !important;
    padding: 0 !important;
    margin: 0 2px;
  }

  /* Section spacing in homepage */
  .new-product {
    padding: 10px 0 !important;
  }

  .title-row {
    padding: 0 4px;
    margin-bottom: 6px !important;
  }

  .title-row .heading-lg {
    font-size: 16px !important;
  }

  .view_all {
    font-size: 12px !important;
  }

  .product-gird {
    margin: 0 -4px;
  }
}

@media screen and (max-width: 767px) {
  .prod-grid-col4 > li,
  .prod-grid-col3 > li,
  .prod-grid-col5 > li {
    padding: 4px !important;
  }

  .product-box {
    min-height: 270px;
  }

  .product-box .prod-img {
    height: 130px !important;
  }

  .product-box .prod-img img {
    max-height: 110px;
  }

  .prod-title {
    font-size: 12px !important;
    padding: 0 4px;
  }

  .product .price {
    font-size: 14px !important;
  }

  .product .offer {
    font-size: 10px !important;
  }

  .floating-add-to-cart,
  .floating-wishlist {
    width: 24px !important;
    height: 24px !important;
    line-height: 24px !important;
    font-size: 10px !important;
  }

  .latest-badge {
    font-size: 8px !important;
    padding: 2px 5px !important;
  }

  .product .rating {
    font-size: 9px !important;
  }
}

@media screen and (max-width: 575px) {
  .prod-grid-col4 > li,
  .prod-grid-col3 > li,
  .prod-grid-col5 > li {
    width: 50% !important;
    padding: 3px !important;
  }

  .product-box {
    min-height: 250px;
    border-radius: 3px;
  }

  .product-box .prod-img {
    height: 110px !important;
  }

  .product-box .prod-img img {
    max-height: 95px;
  }

  .prod-title {
    font-size: 11px !important;
  }

  .product .price {
    font-size: 13px !important;
  }
}

/* ======================================
   PRODUCT DETAIL PAGE
   ====================================== */

@media screen and (max-width: 767px) {
  .protdetail-container {
    flex-direction: column;
    padding: 0 4px;
  }

  .prod-silder {
    width: 100% !important;
    padding: 0;
  }

  .prod-detail {
    width: 100% !important;
    padding-left: 0 !important;
    margin-top: 15px;
  }

  .prod-detail .heading-lg {
    font-size: 18px !important;
    padding-bottom: 8px;
    margin-bottom: 10px;
  }

  .price-wrap .price span {
    font-size: 20px !important;
  }

  .quantity-wrap {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }

  .quantity-wrap .quantitybox {
    width: 100% !important;
    max-width: 130px;
    height: 42px;
  }

  .quantity-wrap .value-button {
    width: 42px;
    height: 42px;
    line-height: 42px;
  }

  .quantity-wrap .add-to-cart,
  .quantity-wrap .buy-now {
    width: 100% !important;
    min-width: 0 !important;
    padding: 12px 16px;
    font-size: 14px;
  }

  .quantity-wrap .add-to-cart {
    margin-left: 0 !important;
    margin-bottom: 6px;
  }

  .stock-list {
    flex-direction: column;
    gap: 6px;
    padding: 0 4px;
  }

  .stock-list li {
    width: 100%;
  }

  .prod-head,
  .prod-info {
    width: 100% !important;
  }

  .prod-all-deatil {
    margin-bottom: 12px;
  }

  /* Tabs */
  .descirp-tab .tab_container {
    padding-top: 10px;
  }

  .descirp-tab ul.tabs {
    display: none;
  }

  .tab_drawer_heading {
    display: block !important;
    color: #04243D;
    font-size: 15px;
    padding: 12px 16px;
    border: 1px solid #D9E0E5;
    margin: 10px 0;
    border-radius: 5px;
    cursor: pointer;
    position: relative;
    background: #f7f7f8;
    font-weight: 500;
  }

  .tab_drawer_heading:after {
    content: '\f078';
    font-family: 'FontAwesome';
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 11px;
    color: #626ABB;
  }

  .tab_drawer_heading.d_active {
    background: #626ABB;
    color: #fff;
    border-color: #626ABB;
  }

  .tab_drawer_heading.d_active:after {
    content: '\f077';
    color: #fff;
  }

  .tab_content {
    padding: 0 4px;
  }

  /* Reviews */
  .overall-ratting {
    flex-direction: column;
    margin: 10px 0 20px;
  }

  .rating-left {
    width: 100% !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(118,119,135,0.2);
    margin-bottom: 15px;
    padding-bottom: 15px;
    min-height: auto !important;
  }

  .rating-right {
    width: 100% !important;
    padding-left: 0 !important;
  }

  .reviewbox {
    padding: 12px;
  }

  .writer-img {
    width: 40px !important;
    height: 40px !important;
  }

  .write-form,
  .write-review {
    width: 100% !important;
    padding-left: 0 !important;
    margin-top: 15px;
  }

  .btn-add-to-wishlist,
  .btn-share {
    padding: 6px 10px !important;
    font-size: 11px !important;
  }

  .product-specification {
    padding: 10px;
  }
}

/* ======================================
   CART PAGE
   ====================================== */

@media screen and (max-width: 575px) {
  .shopping-wrapper {
    flex-direction: column;
  }

  .shop-left {
    width: 100% !important;
    padding-right: 0 !important;
  }

  .shop-right {
    width: 100% !important;
    margin-top: 15px;
  }

  .summary-detail {
    padding: 12px;
  }

  .summary-total li {
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    padding: 6px 0;
  }

  .summary-total .total-box {
    width: 100%;
    justify-content: space-between;
  }

  .summary-total .summary-title {
    font-size: 12px;
  }

  .summary-total .summary-price {
    font-size: 13px;
  }

  .button-place,
  .button-block {
    width: 100%;
    text-align: center;
    padding: 12px 16px;
    font-size: 14px;
  }

  .shopping-cart .product {
    padding: 10px 10px 6px !important;
  }

  .product-image img {
    width: 70px !important;
    margin: 0 0 6px 6px !important;
  }

  .product .product-quantity {
    width: 100% !important;
  }

  .quantitybox2 {
    width: 100% !important;
    max-width: 120px;
    height: 36px !important;
  }

  .quantitybox2 .value-button2 {
    width: 34px !important;
    height: 34px !important;
    line-height: 34px !important;
    font-size: 13px !important;
  }

  .quantitybox2 input.qty {
    height: 34px !important;
    font-size: 13px !important;
  }

  .quantity-referesh {
    width: 32px !important;
    height: 32px !important;
  }

  .product .product-details .product-title {
    font-size: 12px !important;
  }

  .heading-md.heading-line {
    font-size: 15px;
    padding-bottom: 8px;
  }
}

/* ======================================
   CHECKOUT PAGE
   ====================================== */

@media screen and (max-width: 991px) {
  .checkout-wrapper {
    flex-direction: column;
  }

  .delivery-blk {
    width: 100% !important;
    padding-right: 0 !important;
  }

  .ordersummary-blk {
    width: 100% !important;
    margin-top: 20px;
  }

  .checkout-wrapper .form-control,
  .checkout-wrapper select,
  .checkout-wrapper textarea {
    font-size: 14px;
    height: 44px;
  }

  .checkout-wrapper textarea {
    height: auto;
    min-height: 70px;
  }

  .address-main {
    flex-wrap: wrap;
  }

  .address-main .address-sub {
    width: 100%;
    margin-bottom: 8px;
  }

  .payment-box {
    width: calc(50% - 5px);
    margin-bottom: 8px;
    padding: 10px !important;
  }

  .payment-box img {
    max-height: 28px;
  }

  .ordersummary-blk .order__subtotal__table td {
    font-size: 12px;
    padding: 5px 6px;
  }

  .ordersummary-blk .order__subtotal__table th {
    font-size: 12px;
    padding: 6px;
  }

  .ordersummary-blk .summary-detail {
    padding: 12px;
  }

  .ordersummary-blk .button-place {
    width: 100%;
    padding: 12px;
    font-size: 15px;
  }
}

@media screen and (max-width: 575px) {
  .payment-box {
    width: 100%;
  }

  .delivery-blk .heading-md {
    font-size: 15px;
  }

  .delivery-blk .form-group {
    margin-bottom: 10px;
  }

  select.form-control {
    font-size: 13px;
    height: 42px;
  }

  .check-label {
    font-size: 13px;
    padding-left: 26px;
  }

  .checkmark {
    width: 18px;
    height: 18px;
  }

  .ordersummary-blk .order__subtotal__table img {
    width: 45px;
  }
}

/* ======================================
   AGENCY CHECKOUT
   ====================================== */

@media screen and (max-width: 767px) {
  .checkoutForm .form-control,
  .checkoutForm select {
    font-size: 13px;
    height: 42px;
  }

  .checkoutForm textarea {
    min-height: 60px;
    font-size: 13px;
  }

  .checkoutForm input[type="radio"] + label {
    font-size: 13px;
  }

  .ordersummary-blk .total-box {
    padding: 3px 0;
  }
}

/* ======================================
   HOMEPAGE SECTIONS
   ====================================== */

@media screen and (max-width: 767px) {
  /* Product sliders on homepage */
  .new-product {
    padding: 5px 0 !important;
  }

  .title-row {
    padding: 0 2px;
    margin-bottom: 4px !important;
  }

  .title-row .heading-lg {
    font-size: 15px !important;
  }

  .title-row .view_all {
    font-size: 11px !important;
  }

  .product-gird {
    margin: 0 -3px;
  }

  /* Blog section */
  .blog-wrapper {
    padding: 0 4px;
  }

  /* Customer reviews */
  .customer_sec {
    padding: 15px 4px !important;
  }

  .review-box {
    padding: 12px !important;
  }
}

@media screen and (max-width: 575px) {
  .title-row .heading-lg {
    font-size: 14px !important;
  }

  .product-gird {
    margin: 0 -2px;
  }

  /* Subscribe */
  .subscribe-wrapper {
    padding: 20px 10px !important;
  }

  .subscribe-wrapper .heading-lg {
    font-size: 16px !important;
  }

  /* Footer */
  .footer-top {
    padding: 20px 10px !important;
  }

  .footer-top .heading-md {
    font-size: 14px !important;
  }
}

/* ======================================
   F1 LIST PAGE
   ====================================== */

@media screen and (max-width: 767px) {
  .wrapper .contact-wrap {
    padding: 15px 10px !important;
  }

  .wrapper .contact-wrap h3 {
    font-size: 16px;
    margin-bottom: 12px;
  }

  #f1Table {
    font-size: 12px;
  }

  #f1Table th,
  #f1Table td {
    padding: 6px 4px !important;
    white-space: nowrap;
  }

  #f1Table .btn-sm {
    padding: 4px 8px;
    font-size: 11px;
    white-space: nowrap;
  }

  .dataTables_wrapper .dataTables_length,
  .dataTables_wrapper .dataTables_filter {
    width: 100%;
    text-align: left;
    margin-bottom: 8px;
  }

  .dataTables_wrapper .dataTables_filter input {
    max-width: 100%;
    width: 100% !important;
  }

  .dataTables_wrapper .dataTables_info {
    font-size: 11px;
    padding: 6px 0;
  }

  .dataTables_wrapper .dataTables_paginate {
    font-size: 12px;
  }

  .dataTables_wrapper .dataTables_paginate .paginate_button {
    padding: 3px 8px !important;
    font-size: 12px !important;
  }
}

@media screen and (max-width: 575px) {
  .wrapper .contact-wrap {
    padding: 10px 5px !important;
  }

  #f1Table {
    font-size: 11px;
  }

  #f1Table th,
  #f1Table td {
    padding: 4px 3px !important;
  }

  #f1Table .btn-sm {
    padding: 3px 6px;
    font-size: 10px;
  }

  .dataTables_wrapper .dataTables_paginate .paginate_button {
    padding: 2px 6px !important;
    font-size: 11px !important;
  }
}
