/* Common mobile styles (240px - 1024px) */
@media screen and (max-width: 1024px) and (min-width: 240px) {
  /* Layout & Structure */
  .page_width,
  #header_section .header_top,
  #footer_section .page_width {
    padding: 0 15px;
  }
  
  #footer_section .page_width {
    max-width: 100%;
  }
  
  .page_width,
  .grnc_tabnav_tabs > li,
  .appointment_booking .appointment_row .appointment_col,
  .gratis-products .gratis-calculate-total .calculate-total-right,
  .product_cart .cart_pd_section .cart_pd_detail .cart_pd_col2,
  .product_detail_page .product_detail_section1 .product_right .product_col2 {
    width: 100%;
  }

  /* Header & Navigation */
  #header_section .header_bottom {
    position: relative;
    padding: 10px 15px 50px;
  }
  
  #header_section .header_bottom .header_search {
    width: calc(100% - 30px);
    margin: 0 15px;
    min-width: inherit;
    position: absolute;
    left: 0;
    bottom: 5px;
  }
  
  #logo {
    width: 100px;
  }
  
  #header_section .header_top ul li {
    font-size: 11px;
  }
  
  #header_section .header_bottom .header_account ul li {
    margin-left: 5px;
  }
  
  #header_section .header_bottom .header_account ul li .hdr_icon {
    width: 22px;
    font-size: 14px;
  }
  
  #header_section .header_bottom .header_account ul li .hdr_text {
    font-size: 10px;
    width: calc(100% - 15px);
    padding-left: 0;
  }
  
  #header_section .header_bottom .header_account ul li .hdr_text span {
    font-size: 10px;
  }
  
  #navigation_section {
    width: 100%;
    overflow-x: auto;
  }
  
  #navigation_section ul {
    width: 1400px;
  }
  
  #navigation_section ul li.all_menu {
    position: absolute;
    top: 49px;
  }
  
  #navigation_section ul li.all_menu a {
    padding: 0;
  }
  
  #navigation_section ul li.all_menu a:hover {
    background-color: transparent;
    color: #fff;
  }

  /* Product Grids & Cards */
  .gerenric_product_category {
    margin: 0 -10px;
  }
  
  .gerenric_product_category .pd_ctg_row {
    margin: 0 -10px;
  }
  
  .gerenric_product_category .pd_ctg_block {
    width: calc(50% - 20px);
    margin: 10px;
  }
  
  .gerenric_product .pd_card {
    width: calc(25% - 4px);
  }
  
  .product_category .pd_card,
  .marken-page .marken-listing-content .marken-list-data ul li,
  .marken-page .marken-listing-content .marken-list-data .marken-list-col {
    width: 33.333%;
  }

  /* Product Pages */
  .product_page .pd_left,
  .categroy_list h2 {
    z-index: 99999;
    background-color: #fff;
    position: fixed;
  }
  
  .categroy_list h2 {
    border-bottom: 1px solid #ccc;
    border-radius: 10px 10px 0 0;
    margin: -15px -15px 0;
    width: calc(100% + 30px);
    padding: 10px 15px;
  }
  
  .categroy_list h2 .categroy_close_mb {
    font-size: 18px;
    display: block;
    color: #cc0f19;
    position: absolute;
    right: 15px;
    top: 12px;
    cursor: pointer;
  }
  
  .product_page .product_inner {
    flex-wrap: wrap;
  }
  
  .product_page .pd_left {
    width: 100%;
    display: none;
    left: 0;
    bottom: 0;
    padding: 15px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
    overflow-y: auto;
    border-radius: 10px 10px 0 0;
    height: 300px;
  }
  
  .product_page .pd_right,
  .gerenric_form ul li .form_right,
  .product_detail_page .product_detail_section1 .product_right {
    width: 100%;
    padding-left: 0;
  }
  
  .product_detail_page .product_detail_section1 .product_left {
    width: 100%;
    margin-bottom: 30px;
  }
  
  .product_detail_page .product_detail_section1 .product_right .product_col1 {
    width: 100%;
    padding-right: 0;
    margin-bottom: 20px;
  }

  /* Cart & Checkout */
  .product_cart .cart_left {
    width: 100%;
    padding-right: 0;
    margin-bottom: 30px;
  }
  
  .product_cart .cart_right {
    width: 100%;
    margin-bottom: 30px;
  }
  
  .product_cart .cart_pd_section .cart_pd_image {
    width: 70px;
  }
  
  .product_cart .cart_pd_section .cart_pd_detail {
    width: calc(100% - 70px);
    flex-wrap: wrap;
    padding-left: 10px;
  }
  
  .product_cart .cart_pd_section .cart_pd_detail .cart_pd_col1,
  .product_cart h2 .shopping_title {
    width: 100%;
    padding-right: 0;
  }
  
  .product_cart .cart_pd_section .cart_pd_detail .cart_pd_option ul li,
  .product_cart .cart_pd_section .cart_pd_detail .cart_pd_piece {
    font-size: 12px;
  }
  
  .product_cart .cart_pd_section .cart_pd_detail .cart_pd_col2 .cart_price {
    font-size: 17px;
    text-align: left;
  }
  
  .product_cart .cart_pd_section .cart_pd_total .total_prise_text {
    font-size: 16px;
  }
  
  .product_cart .cart_delivery .cart_delivery_col {
    width: 100%;
    padding: 0 10px;
  }

  /* Forms */
  .gerenric_form ul li .form_left {
    width: 100%;
    padding-right: 0;
    margin-bottom: 15px;
  }

  /* Typography */
  .contact_block h3,
  .gerenric_product h2,
  .gerenric_product_category .pd_ctg_heading {
    font-size: 18px;
  }
  
  .gerenric_product .pd_detail h5,
  .product_cart .cart_pd_section .cart_pd_detail .cart_pd_title {
    font-size: 15px;
  }
  
  .gerenric_product .pd_detail .pd_prise,
  .gratis-products .gratis-total-prise .gratis-total-prise-big,
  .product_cart h2 {
    font-size: 20px;
  }
  
  .gerenric_product .pd_detail .pd_rating ul li .fa,
  .pd_tag {
    font-size: 14px;
  }

  /* Sliders & Carousels */
  .gerenric_product .slick-next,
  .gerenric_product .slick-prev {
    width: 30px;
    height: 30px;
  }
  
  .gerenric_product .slick-next::after,
  .gerenric_product .slick-prev::after {
    font-size: 22px !important;
  }

  /* Switches */
  .gerenric_switch .switch {
    width: 46px;
    height: 21px;
  }
  
  .gerenric_switch .switch::before {
    width: 15px;
    height: 15px;
  }

  /* Popups */
  .form_popup > .inner_popup {
    width: 95%;
  }

  /* Filter */
  .filter_mobile {
    width: 100%;
    position: relative;
    display: block;
    background-color: #efefef;
    margin-bottom: 20px;
    border: 1px solid #ccc;
    font-size: 16px;
    color: #000;
    padding: 10px;
  }
  
  .filter_mobile i {
    position: absolute;
    right: 10px;
  }

  /* Contact & Address */
  .contact_page .contact_col,
  .gerenric_address .address_col {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
  }

  /* Hide Elements */
  #banner_section .banner_detail p,
  #header_section .header_bottom .header_account ul li:first-child,
  #header_section .header_bottom .header_location,
  #header_section .header_language,
  #header_section .header_top ul:nth-child(2) li:first-child,
  .header_nav_2,
  .list_type_row ul .click_list,
  .marken-page .marken-nav .marken-nav-link:hover .marken-listing-content,
  .product_cart h2 .cart_prise_label_row,
  .simpleLens-lens-element {
    display: none;
  }

  /* Home Page */
  .home_page .hm_section_1 {
    top: 0;
    margin-bottom: 0;
    padding: 0;
  }
  
  .home_page .hm_section_2 {
    padding: 0;
  }

  /* Banner */
  #banner_section .banner_image img,
  #banner_section .banner_inner {
    height: auto;
  }
  
  #banner_section video {
    width: 100%;
    height: auto;
  }
  
  #banner_section .slick-next,
  #banner_section .slick-prev {
    width: 35px;
    height: 35px;
    top: 120px;
  }
  
  #banner_section .slick-next::after,
  #banner_section .slick-prev::after {
    font-size: 24px !important;
  }
  
  #banner_section .slick-prev {
    left: 15px;
  }
  
  #banner_section .slick-next {
    right: 15px;
  }
  
  #banner_section .banner_detail {
    left: 60px;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
  }

  /* Category */
  .category_type_product .ctg_type_col,
  .gratis-products .gratis-card,
  .my_order_page .my_order_box .order_place_bar .place_col {
    width: 50%;
  }

  /* Orders */
  .my_order_page .my_order_box .order_place_bar .place_col:last-child {
    width: 100%;
    text-align: center;
  }

  /* Personal Page */
  .my_personal_page .my_personal_card {
    width: calc(50% - 40px);
  }

  /* About Page */
  .about_page .about_block .about_br .about_image {
    width: 250px;
  }
  
  .about_page .about_block .about_br .about_detail {
    width: calc(100% - 250px);
  }

  /* Appointment */
  .appointment_date_booking .appointment_section1 .appointment_col {
    width: 50%;
    padding: 8px;
  }

  /* Shopping List */
  .new_shopping_list_page .shopping_list_left {
    width: 100%;
    padding-bottom: 10px;
    margin-bottom: 30px;
    border-bottom: 1px solid #ccc;
  }
  
  .new_shopping_list_page .shopping_list_right {
    width: 100%;
    padding-left: 0;
  }
  
  .new_shopping_list_page .shopping_list_detail .list_porduct .gerenric_product .pd_card {
    width: calc(33.333% - 4px);
  }

  /* Footer */
  #footer_section .footer_top h2 {
    margin-bottom: 10px;
  }
  
  #footer_section .footer_top .footer-col {
    width: 50%;
    margin-bottom: 20px;
  }
  
  #footer_section .subscribe_newsletter_btn {
    min-width: inherit;
    padding: 10px;
  }

  /* Login */
  .login_page .login_inner,
  .login_page.register_page .login_inner {
    max-width: 100%;
  }
  
  .login_page .login_box {
    width: auto;
  }

  /* Not Available */
  .not_ailable {
    width: 300px;
  }

  /* List Type */
  .list_type_row {
    flex-direction: column;
    gap: 10px;
  }
  
  .list_type_row h2 {
    text-align: center;
  }
  
  .list_porduct .gerenric_product .pd_card {
    width: calc(50% - 4px);
  }

  /* Popup General */
  .popup .popup_inner {
    width: 90%;
  }

  /* Marken Page */
  .marken-page .marken-nav .marken-nav-link {
    width: 11%;
    padding: 2px;
  }
  
  .marken-page .marken-nav .marken-nav-link a {
    border-right-color: #767676;
  }
  
  .marken-page .marken-two-part .marken-content-left {
    width: 100%;
    padding-right: 0;
    margin-bottom: 30px;
  }
  
  .marken-page .marken-two-part .marken-content-right {
    width: 250px;
    margin: auto;
  }

  /* Gratis Products */
  .gratis-products .gratis-calculate-total {
    display: block;
  }
  
  .gratis-products .gratis-calculate-total .calculate-total-left .calculate-gratis-text {
    font-size: 40px;
  }
  
  .gratis-products .gratis-card:nth-child(5n) .gratis-box {
    border-right: 1px solid #767676;
  }
  
  .gratis-products .gratis-card:nth-child(2n) .gratis-box {
    border-right: 0;
  }

  /* Marken Logos */
  .marken-logos {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
  }
  
  .marken-logos .marken-img {
    flex: 0 0 48%;
  }

  /* Product Availability Check */
  .availability_product_check {
    flex-direction: column;
    width: 100%;
    align-items: flex-start;
  }
}

/* Medium screens (240px - 650px) */
@media screen and (max-width: 650px) and (min-width: 240px) {
  /* Product Cards */
  .gerenric_product .pd_image {
    height: 160px;
  }
  
  .gerenric_product .pd_card {
    width: calc(33.333% - 4px);
  }

  /* Banner */
  #banner_section .banner_detail {
    width: 150px;
    max-width: initial;
  }
  
  #banner_section .banner_detail h2 {
    font-size: 16px;
  }
  
  #banner_section .banner_detail .gerenric_btn {
    font-size: 12px;
    min-width: 100px;
    padding: 10px;
  }

  /* Product Detail */
  .product_detail_page .product_detail_section1 .product_left .product_main_image .simpleLens-lens-image img,
  .product_detail_page .product_detail_section1 .simpleLens-big-image-container {
    height: 300px;
  }
  
  .product_detail_page .product_detail_section1 .product_right .product_col1 h1 {
    font-size: 20px;
  }

  /* Grid Layouts */
  .marken-page .marken-listing-content .marken-list-data .marken-list-col,
  .marken-page .marken-listing-content .marken-list-data ul li,
  .product_category .pd_card {
    width: 50%;
  }

  /* Location Popup */
  .location_popup > .inner_popup {
    max-width: 90%;
    margin: auto;
  }

  /* Orders */
  .my_order_page .my_order_box .my_order_box_inner .order_image {
    width: 150px;
    margin: auto auto 20px;
  }
  
  .my_order_page .my_order_box .my_order_box_inner .order_detail {
    width: 100%;
    padding-left: 0;
  }

  /* Personal Page */
  .my_personal_page .my_personal_inner {
    margin: 0;
  }
  
  .my_personal_page .my_personal_card {
    width: 100%;
    margin: 10px 0;
  }

  /* Footer */
  #footer_section .footer_top .footer-col {
    width: 100%;
  }
  
  #footer_section .footer_top .footer_payment_method {
    width: 250px;
  }

  /* About Page */
  .about_page .about_block .about_br .about_image,
  .gerenric_product .pd_detail .pd_action ul li:last-child {
    width: 100%;
  }
  
  .about_page .about_block .about_br .about_detail {
    width: 100%;
  }

  /* Appointment */
  .appointment_booking h3 {
    font-size: 22px;
  }
  
  .appointment_booking .appointment_row .appointment_card h2 {
    font-size: 18px;
  }
  
  .appointment_booking .appointment_row .appointment_card p {
    font-size: 14px;
  }
  
  .appointment_booking .appointment_row .appointment_card .appintment_image {
    width: 70px;
  }
  
  .appointment_booking .appointment_row .appointment_card .appintment_detail {
    width: calc(100% - 70px);
  }
  
  .appointment_date_booking .appointment_section1 .appointment_col {
    width: 100%;
    padding: 8px;
  }
  
  .appointment_date_booking .appointment_section1 .appointment_card {
    min-height: auto;
  }

  /* Shopping List */
  .new_shopping_list_page .shopping_list_detail .list_porduct .gerenric_product .pd_card {
    width: calc(50% - 4px);
  }
  
  .new_shopping_list_page .shopping_list_detail .list_porduct.list_class .gerenric_product .pd_image {
    width: 80px;
    margin-bottom: 0;
  }
  
  .new_shopping_list_page .shopping_list_detail .list_porduct.list_class .gerenric_product .pd_detail {
    width: calc(100% - 80px);
    padding-left: 10px;
  }

  /* Product Actions */
  .gerenric_product .pd_detail .pd_action ul {
    flex-wrap: wrap;
  }
  
  .gerenric_product .pd_detail .pd_action ul li:last-child::after {
    display: none;
  }

  /* Footer */
  #footer_section .footer_top {
    margin-bottom: 0;
  }

  /* Product Image */
  .product_main_image .thum_images {
    height: 324px;
  }

  /* Gratis Products */
  .gratis-products .gratis-card {
    width: 100%;
    margin-bottom: 10px;
  }
  
  .gratis-products .gratis-box {
    width: 100%;
    border: 1px solid #767676;
  }
  
  .gratis-products .gratis-card:nth-child(2n) .gratis-box,
  .gratis-products .gratis-card:nth-child(5n) .gratis-box {
    border-right: 1px solid #767676;
  }

  /* Header Logos */
  #header_section .header_bottom .tint_toner_logo {
    width: 45px;
  }
  
  #header_section .header_bottom .tint_toner_txt {
    font-size: 10px;
    font-weight: 500;
  }
}

/* Small screens (240px - 480px) */
@media screen and (max-width: 480px) and (min-width: 240px) {
  .gerenric_product_category .pd_ctg_block {
    width: calc(100% - 20px);
  }
  
  .gerenric_product .pd_card {
    width: calc(50% - 4px);
  }
}